[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 4/4] x86/EFI: adjust EFI_MEMORY_WP handling for spec version 2.5
. ..snip.. > @@ -1220,6 +1224,9 @@ void __init efi_init_memory(void) > prot |= _PAGE_PAT | MAP_SMALL_PAGES; > else if ( desc->Attribute & (EFI_MEMORY_UC | EFI_MEMORY_UCE) ) > prot |= _PAGE_PWT | _PAGE_PCD | MAP_SMALL_PAGES; > + else if ( efi_bs_revision >= EFI_REVISION(2, 5) && > + (desc->Attribute & EFI_MEMORY_WP) ) > + prot |= _PAGE_PAT | _PAGE_PWT | MAP_SMALL_PAGES; > else > { > printk(XENLOG_ERR "Unknown cachability for MFNs %#lx-%#lx%s\n", > @@ -1229,7 +1236,8 @@ void __init efi_init_memory(void) > prot |= _PAGE_PWT | _PAGE_PCD | MAP_SMALL_PAGES; > } > > - if ( desc->Attribute & EFI_MEMORY_WP ) > + if ( desc->Attribute & (efi_bs_revision < EFI_REVISION(2, 5) > + ? EFI_MEMORY_WP : EFI_MEMORY_RO) ) > prot &= ~_PAGE_RW; > if ( desc->Attribute & EFI_MEMORY_XP ) > prot |= _PAGE_NX; > --- a/xen/include/efi/efidef.h > +++ b/xen/include/efi/efidef.h > @@ -156,11 +156,15 @@ typedef enum { > #define EFI_MEMORY_WT 0x0000000000000004 > #define EFI_MEMORY_WB 0x0000000000000008 > #define EFI_MEMORY_UCE 0x0000000000000010 > +#define EFI_MEMORY_WP 0x0000000000001000 > > // physical memory protection on range > -#define EFI_MEMORY_WP 0x0000000000001000 You delete EFI_MEMORY_WP it here, but you use it in 'efi_init_memory'? > #define EFI_MEMORY_RP 0x0000000000002000 > #define EFI_MEMORY_XP 0x0000000000004000 > +#define EFI_MEMORY_RO 0x0000000000020000 > + > +#define EFI_MEMORY_NV 0x0000000000008000 > +#define EFI_MEMORY_MORE_RELIABLE 0x0000000000010000 Those two are new (NV, MORE_RELIABLE), should they be part of a different patch? Or if they are part of the new spec just mention in the commit that you are adding it in for future use? > > // range requires a runtime mapping > #define EFI_MEMORY_RUNTIME 0x8000000000000000 > _______________________________________________ > Xen-devel mailing list > Xen-devel@xxxxxxxxxxxxx > http://lists.xen.org/xen-devel _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |