[PATCH v2][Xenial] UBUNTU: [Config] CONFIG_ARM64_VA_BITS=48
dann frazier
dann.frazier at canonical.com
Tue Feb 2 22:34:23 UTC 2016
On NUMA implementations of Cavium ThunderX, node1 memory addresses start with
bit 40 set to 1, and therefore requires >= 41 bits of VA. A side effect of
this is an increase from 3 to 4 page table levels.
Note: The alternative way to increase VA bits w/o moving to 4 level page
tables would be to adopt a larger page size. That would have a far more
significant impact to memory usage, and is known to have issue with current
Ubuntu userspace:
https://lists.ubuntu.com/archives/ubuntu-devel/2014-December/038572.html
http://bugs.launchpad.net/bugs/1520162
Signed-off-by: dann frazier <dann.frazier at canonical.com>
---
debian.master/config/annotations | 4 ++++
debian.master/config/arm64/config.common.arm64 | 2 +-
debian.master/config/config.common.ubuntu | 6 +++---
3 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/debian.master/config/annotations b/debian.master/config/annotations
index 4288cf0..f13dc79 100644
--- a/debian.master/config/annotations
+++ b/debian.master/config/annotations
@@ -36,6 +36,10 @@ CONFIG_LOWMEM_CAM_NUM policy<{'powerpc-powerpc-e500mc'
CONFIG_ARM_DMA_IOMMU_ALIGNMENT policy<{'armhf': '8'}>
CONFIG_ARM_PATCH_PHYS_VIRT policy<{'armhf': 'y'}>
+# Menu: Architecture: arm64
+CONFIG_ARM64_VA_BITS policy<{'arm64': '48'}>
+CONFIG_ARM64_VA_BITS mark<ENFORCED> note<Cavium ThunderX 2-socket needs a minimum of 41 bits of VA>
+
# Menu: Architecture: powerpc
CONFIG_PPC64 policy<{'powerpc-powerpc64-emb': 'y', 'powerpc-powerpc64-smp': 'y', 'powerpc-powerpc-e500mc': 'n', 'powerpc-powerpc-smp': 'n', 'ppc64el': 'y'}>
CONFIG_NR_IRQS policy<{'powerpc': '512', 'ppc64el': '512'}>
diff --git a/debian.master/config/arm64/config.common.arm64 b/debian.master/config/arm64/config.common.arm64
index 70ab3c0..e98bd48 100644
--- a/debian.master/config/arm64/config.common.arm64
+++ b/debian.master/config/arm64/config.common.arm64
@@ -272,7 +272,7 @@ CONFIG_PCIPCWATCHDOG=m
CONFIG_PCI_PASID=y
CONFIG_PCI_PRI=y
CONFIG_PCI_QUIRKS=y
-CONFIG_PGTABLE_LEVELS=3
+CONFIG_PGTABLE_LEVELS=4
CONFIG_PGTABLE_MAPPING=y
CONFIG_PHANTOM=m
CONFIG_PHONET=m
diff --git a/debian.master/config/config.common.ubuntu b/debian.master/config/config.common.ubuntu
index baa1643..647b88d 100644
--- a/debian.master/config/config.common.ubuntu
+++ b/debian.master/config/config.common.ubuntu
@@ -499,9 +499,9 @@ CONFIG_ARM64_HW_AFDBM=y
CONFIG_ARM64_PAN=y
# CONFIG_ARM64_PTDUMP is not set
# CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET is not set
-CONFIG_ARM64_VA_BITS=39
-CONFIG_ARM64_VA_BITS_39=y
-# CONFIG_ARM64_VA_BITS_48 is not set
+CONFIG_ARM64_VA_BITS=48
+# CONFIG_ARM64_VA_BITS_39 is not set
+CONFIG_ARM64_VA_BITS_48=y
CONFIG_ARMADA375_USBCLUSTER_PHY=y
CONFIG_ARMADA_370_CLK=y
CONFIG_ARMADA_370_XP_TIMER=y
--
2.7.0
More information about the kernel-team
mailing list