From: Stephen Rothwell Date: Wed, 19 Jun 2013 06:53:49 +0000 (+1000) Subject: Merge remote-tracking branch 'arm64-hugepages/for-next/hugepages' X-Git-Tag: next-20130619~4 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=6b455b44582515475a1af8394bd8e0698517d097;p=karo-tx-linux.git Merge remote-tracking branch 'arm64-hugepages/for-next/hugepages' Conflicts: arch/arm64/Kconfig arch/arm64/include/asm/pgtable-hwdef.h arch/arm64/include/asm/pgtable.h --- 6b455b44582515475a1af8394bd8e0698517d097 diff --cc arch/arm64/Kconfig index ef32eb1aa2d9,308a55636f76..4768aacd8d6f --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig @@@ -181,18 -180,25 +181,35 @@@ config HW_PERF_EVENT Enable hardware performance counter support for perf events. If disabled, perf events will use software events only. + config SYS_SUPPORTS_HUGETLBFS + def_bool y + + config ARCH_WANT_GENERAL_HUGETLB + def_bool y + + config ARCH_WANT_HUGE_PMD_SHARE + def_bool y if !ARM64_64K_PAGES + + config HAVE_ARCH_TRANSPARENT_HUGEPAGE + def_bool y + source "mm/Kconfig" + config FORCE_MAX_ZONEORDER + int + default "14" if (ARM64_64K_PAGES && TRANSPARENT_HUGEPAGE) + default "11" + +config XEN_DOM0 + def_bool y + depends on XEN + +config XEN + bool "Xen guest support on ARM64 (EXPERIMENTAL)" + depends on ARM64 && OF + help + Say Y if you want to run Linux in a Virtual Machine on Xen on ARM64. + endmenu menu "Boot options" diff --cc arch/arm64/include/asm/pgtable.h index 5588e8ad9762,720fc4a2be49..065e58f01b1e --- a/arch/arm64/include/asm/pgtable.h +++ b/arch/arm64/include/asm/pgtable.h @@@ -76,13 -76,7 +76,13 @@@ extern pgprot_t pgprot_default #define PAGE_KERNEL _MOD_PROT(pgprot_default, PTE_PXN | PTE_UXN | PTE_DIRTY) #define PAGE_KERNEL_EXEC _MOD_PROT(pgprot_default, PTE_UXN | PTE_DIRTY) +#define PAGE_HYP _MOD_PROT(pgprot_default, PTE_HYP) +#define PAGE_HYP_DEVICE __pgprot(PROT_DEVICE_nGnRE | PTE_HYP) + +#define PAGE_S2 __pgprot_modify(pgprot_default, PTE_S2_MEMATTR_MASK, PTE_S2_MEMATTR(MT_S2_NORMAL) | PTE_S2_RDONLY) +#define PAGE_S2_DEVICE __pgprot(PROT_DEFAULT | PTE_S2_MEMATTR(MT_S2_DEVICE_nGnRE) | PTE_S2_RDWR | PTE_UXN) + - #define __PAGE_NONE __pgprot(((_PAGE_DEFAULT) & ~PTE_TYPE_MASK) | PTE_PROT_NONE) + #define __PAGE_NONE __pgprot(((_PAGE_DEFAULT) & ~PTE_TYPE_MASK) | PTE_PROT_NONE | PTE_RDONLY | PTE_PXN | PTE_UXN) #define __PAGE_SHARED __pgprot(_PAGE_DEFAULT | PTE_USER | PTE_NG | PTE_PXN | PTE_UXN) #define __PAGE_SHARED_EXEC __pgprot(_PAGE_DEFAULT | PTE_USER | PTE_NG | PTE_PXN) #define __PAGE_COPY __pgprot(_PAGE_DEFAULT | PTE_USER | PTE_NG | PTE_PXN | PTE_UXN | PTE_RDONLY)