CVE-2024-50141

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
07/11/2024
Last modified:
08/11/2024

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> ACPI: PRM: Find EFI_MEMORY_RUNTIME block for PRM handler and context<br /> <br /> PRMT needs to find the correct type of block to translate the PA-VA<br /> mapping for EFI runtime services.<br /> <br /> The issue arises because the PRMT is finding a block of type<br /> EFI_CONVENTIONAL_MEMORY, which is not appropriate for runtime services<br /> as described in Section 2.2.2 (Runtime Services) of the UEFI<br /> Specification [1]. Since the PRM handler is a type of runtime service,<br /> this causes an exception when the PRM handler is called.<br /> <br /> [Firmware Bug]: Unable to handle paging request in EFI runtime service<br /> WARNING: CPU: 22 PID: 4330 at drivers/firmware/efi/runtime-wrappers.c:341<br /> __efi_queue_work+0x11c/0x170<br /> Call trace:<br /> <br /> Let PRMT find a block with EFI_MEMORY_RUNTIME for PRM handler and PRM<br /> context.<br /> <br /> If no suitable block is found, a warning message will be printed, but<br /> the procedure continues to manage the next PRM handler.<br /> <br /> However, if the PRM handler is actually called without proper allocation,<br /> it would result in a failure during error handling.<br /> <br /> By using the correct memory types for runtime services, ensure that the<br /> PRM handler and the context are properly mapped in the virtual address<br /> space during runtime, preventing the paging request error.<br /> <br /> The issue is really that only memory that has been remapped for runtime<br /> by the firmware can be used by the PRM handler, and so the region needs<br /> to have the EFI_MEMORY_RUNTIME attribute.<br /> <br /> [ rjw: Subject and changelog edits ]

Impact