CVE-2024-41085 Information
Description
In the Linux kernel the following vulnerability has been resolved:
cxl/mem: Fix no cxl_nvd during pmem region auto-assembling
When CXL subsystem is auto-assembling a pmem region during cxl endpoint port probing always hit below calltrace.
BUG: kernel NULL pointer dereference address: 0000000000000078
PF: supervisor read access in kernel mode
PF: error_code(0x0000) - not-present page
RIP: 0010:cxl_pmem_region_probe+0x22e/0x360 [cxl_pmem]
Call Trace:
The cxl_nvd of the memdev needs to be available during the pmem region probe. Currently the cxl_nvd is registered after the endpoint port probe. The endpoint probe in the case of autoassembly of regions can cause a pmem region probe requiring the not yet available cxl_nvd. Adjust the sequence so this dependency is met.
This requires adding a port parameter to cxl_find_nvdimm_bridge() that can be used to query the ancestor root port. The endpoint port is not yet available but will share a common ancestor with its parent so start the query from there instead.
Reference
https://git.kernel.org/stable/c/1d064e4fbebcf5b18dc10c1f3973487eb163b600 https://git.kernel.org/stable/c/84ec985944ef34a34a1605b93ce401aa8737af96
Share on: