As I know according to UEFI spec, it has no requirement about the Table needs to be in runtime memory, but only requires the list (holding Guid value and Table pointer) needs to be in runtime memory.
"The InstallConfigurationTable() function is used to maintain the list of configuration tables that are stored in the EFI System Table. The list is stored as an array of (GUID, Pointer) pairs. The list must be allocated from pool memory with PoolType set to EfiRuntimeServicesData." Jiewen, you should know more detail about this feature. Thanks, Star -----Original Message----- From: edk2-devel [mailto:[email protected]] On Behalf Of Larry Cleeton Sent: Tuesday, September 19, 2017 3:49 AM To: [email protected] Subject: [edk2] EFI_MEMORY_ATTRIBUTES_TABLE not in runtime memory The EFI_MEMORY_ATTRIBUTES_TABLE constructed in MdeModulePkg/core/dxe/misc/MemoryAttributesTable.c is allocating the table memory using AllocatePool(). It seems it should be allocated using AllocateRuntimePool(). We've observed Linux kernels seeing a zeroed table, likely because those boot services memory pages have been reclaimed and zeroed. It appears that several other configuration tables are allocated with runtime memory. I haven't found any specific statements that this table should be in runtime memory. However it seems pragmatic and consistent that it be in runtime memory. _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

