(this time after I subscribed to the ML)
Hi guys,
I've been playing with mapping EFI runtime regions in a topdown manner
in Linux for purposes of using EFI in a kexec'ed kernel. For that I've
been using EFI BIOS built from edk2 sources, svn revision r14165 from
March this year in qemu.
Here's the problem I'm observing: I'm handing down a prepared
virtual map to SetVirtualAddressMap which has, a.o., the following
EFI_RUNTIME_SERVICES_CODE mapping:
[ 47.371000] __lookup_address_in_pgd: address: 0xfffffffefdd6d000
[ 47.373000] __lookup_address_in_pgd: pgd: 0x2a0d067
(0xffff88000009cff8)
[ 47.375000] __lookup_address_in_pgd: pud: 0x7c818063
(0xffff880002a0dfd8)
[ 47.377000] __lookup_address_in_pgd: pmd: 0x7c823063
(0xffff88007c818f70)
[ 47.379000] __lookup_address_in_pgd: pte: 0x7fb12063
(0xffff88007c823b68)
i.e., virtual address 0xfffffffefdd6d000 maps to physical address 0x7fb12063.
After SetVirtualAddressMap finishes, the mapping has changed to
[ 47.383000] efi: efi_enter_virtual_mode: phys_efi_set_virtual_address_map
succeeded
[ 47.385000] __lookup_address_in_pgd: address: 0xfffffffefdd6d000
[ 47.387000] __lookup_address_in_pgd: pgd: 0x2a0d067
(0xffff88000009cff8)
[ 47.389000] __lookup_address_in_pgd: pud: 0x7c818063
(0xffff880002a0dfd8)
[ 47.391000] __lookup_address_in_pgd: pmd: 0x7c823063
(0xffff88007c818f70)
[ 47.393000] __lookup_address_in_pgd: pte: 0x800000007fb12163
(0xffff88007c823b68)
and the PTE has gotten the NX bit set even though it is part of
EFI_RUNTIME_SERVICES_CODE mapping which should be executable.
The same thing doesn't happen on baremetal, on the Dell box I have here.
Is this known? Do I need to rebuild the OVMF.id BIOS?
I appreciate any suggestions,
Thanks.
--
Regards/Gruss,
Boris.
Sent from a fat crate under my desk. Formatting is fine.
--
------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel