Hi Steve, Today's linux-next merge of the arm64-hugepages tree got conflicts in arch/arm64/include/asm/pgtable-hwdef.h and arch/arm64/include/asm/pgtable.h between commit 363116073a26 ("arm64: KVM: define HYP and Stage-2 translation page flags") from the arm64 tree and commits 072b1b62a643 ("ARM64: mm: Make PAGE_NONE pages read only and no-execute") and af07484863e0 ("ARM64: mm: THP support") from the arm64-hugepages tree. I fixed it up (see below) and can carry the fix as necessary (no action is required). Note that the arm64 tree version of PMD_SECT_USER used a pteval_t where I would have expected a pmdval_t like the arm64-hugepages tree version. -- Cheers, Stephen Rothwell sfr@xxxxxxxxxxxxxxxx diff --cc arch/arm64/include/asm/pgtable.h index 5588e8a,720fc4a..0000000 --- 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)
Attachment:
pgp3OnXTgfRsT.pgp
Description: PGP signature