efi: Add unaccepted memory support
efi_config_parse_tables() reserves memory that holds unaccepted memory configuration table so it won't be reused by page allocator. Core-mm requires few helpers to support unaccepted memory: - accept_memory() checks the range of addresses against the bitmap and accept memory if needed. - range_contains_unaccepted_memory() checks if anything within the range requires acceptance. Architectural code has to provide efi_get_unaccepted_table() that returns pointer to the unaccepted memory configuration table. arch_accept_memory() handles arch-specific part of memory acceptance. Signed-off-by:Kirill A. Shutemov <kirill.shutemov@linux.intel.com> Signed-off-by:
Borislav Petkov (AMD) <bp@alien8.de> Reviewed-by:
Ard Biesheuvel <ardb@kernel.org> Reviewed-by:
Tom Lendacky <thomas.lendacky@amd.com> Link: https://lore.kernel.org/r/20230606142637.5171-6-kirill.shutemov@linux.intel.com
Showing
- arch/x86/platform/efi/efi.c 3 additions, 0 deletionsarch/x86/platform/efi/efi.c
- drivers/firmware/efi/Makefile 1 addition, 0 deletionsdrivers/firmware/efi/Makefile
- drivers/firmware/efi/efi.c 25 additions, 0 deletionsdrivers/firmware/efi/efi.c
- drivers/firmware/efi/unaccepted_memory.c 112 additions, 0 deletionsdrivers/firmware/efi/unaccepted_memory.c
- include/linux/efi.h 1 addition, 0 deletionsinclude/linux/efi.h
Loading
Please register or sign in to comment