On Tue, Sep 08, 2020 at 11:33:35AM +0100, Marc Zyngier wrote: > On 2020-09-07 16:23, Will Deacon wrote: > > diff --git a/arch/arm64/include/asm/pgtable-hwdef.h > > b/arch/arm64/include/asm/pgtable-hwdef.h > > index 1a989353144e..bb97d464f42b 100644 > > --- a/arch/arm64/include/asm/pgtable-hwdef.h > > +++ b/arch/arm64/include/asm/pgtable-hwdef.h > > @@ -172,23 +172,6 @@ > > #define PTE_ATTRINDX(t) (_AT(pteval_t, (t)) << 2) > > #define PTE_ATTRINDX_MASK (_AT(pteval_t, 7) << 2) > > > > -/* > > - * 2nd stage PTE definitions > > - */ > > -#define PTE_S2_RDONLY (_AT(pteval_t, 1) << 6) /* HAP[2:1] */ > > -#define PTE_S2_RDWR (_AT(pteval_t, 3) << 6) /* HAP[2:1] */ > > -#define PTE_S2_XN (_AT(pteval_t, 2) << 53) /* XN[1:0] */ > > -#define PTE_S2_SW_RESVD (_AT(pteval_t, 15) << 55) /* Reserved for SW > > */ > > - > > -#define PMD_S2_RDONLY (_AT(pmdval_t, 1) << 6) /* HAP[2:1] */ > > -#define PMD_S2_RDWR (_AT(pmdval_t, 3) << 6) /* HAP[2:1] */ > > -#define PMD_S2_XN (_AT(pmdval_t, 2) << 53) /* XN[1:0] */ > > -#define PMD_S2_SW_RESVD (_AT(pmdval_t, 15) << 55) /* Reserved for SW > > */ > > - > > -#define PUD_S2_RDONLY (_AT(pudval_t, 1) << 6) /* HAP[2:1] */ > > -#define PUD_S2_RDWR (_AT(pudval_t, 3) << 6) /* HAP[2:1] */ > > -#define PUD_S2_XN (_AT(pudval_t, 2) << 53) /* XN[1:0] */ > > - > > /* > > * Memory Attribute override for Stage-2 (MemAttr[3:0]) > > */ > > This breaks the (still out of tree) NV patches, which use some of > these definitions as part of the architectural S2 PTW. > > I can either keep a KVM-private copy, or revert this hunk. What do > you think? I'd be inclined to stick a private copy in your .c file, and perhaps we can try to move NV over to the new page-table code in the future (which will definitely need some extensions to handle the walk). Will _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/mailman/listinfo/kvmarm