CyberRota Analysis
AI-GeneratedThe vulnerability affects the Linux kernel's handling of discontiguous memory resources during the removal process of DAX (Direct Access) devices. An attacker could exploit this flaw to cause a denial of service by triggering a NULL pointer dereference, potentially leading to system instability or crashes. Organizations running Linux systems that utilize DAX should prioritize patching this vulnerability to maintain system reliability and security.
Original NVD Description
In the Linux kernel, the following vulnerability has been resolved: dax/kmem: account for partial discontiguous resource upon removal When dev_dax_kmem_probe() partially succeeds (at least one range is mapped) but a subsequent range fails request_mem_region() or add_memory_driver_managed(), the probe silently continues, ultimately returning success, but with the corresponding range resource NULL'ed out. dev_dax_kmem_remove() iterates over all dax_device ranges regardless of if the underlying resource exists. When remove_memory() is called later, it returns 0 because the memory was never added which causes dev_dax_kmem_remove() to incorrectly assume the (nonexistent) resource can be removed and attempts cleanup on a NULL pointer. Fix this by skipping these ranges altogether, noting that these cases are considered success, such that the cleanup is still reached when all actually-added ranges are successfully removed.