CVE-2024-38543

Summary

In the Linux kernel, the following vulnerability has been resolved:

lib/test_hmm.c: handle src_pfns and dst_pfns allocation failure

The kcalloc() in dmirror_device_evict_chunk() will return null if the physical memory has run out. As a result, if src_pfns or dst_pfns is dereferenced, the null pointer dereference bug will happen.

Moreover, the device is going away. If the kcalloc() fails, the pages mapping a chunk could not be evicted. So add a __GFP_NOFAIL flag in kcalloc().

Finally, as there is no need to have physically contiguous memory, Switch kcalloc() to kvcalloc() in order to avoid failing allocations.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxb2ef9f5a5cb37643ca5def3516c546457074b882 < 1a21fdeea502658e315bd939409b755974f4fb64affected
LinuxLinuxb2ef9f5a5cb37643ca5def3516c546457074b882 < 65e528a69cb3ed4a286c45b4afba57461c8b5b33affected
LinuxLinuxb2ef9f5a5cb37643ca5def3516c546457074b882 < ce47e8ead9a72834cc68431d53f8092ce69bebb7affected
LinuxLinuxb2ef9f5a5cb37643ca5def3516c546457074b882 < 3b20d18f475bd17309db640dbe7d7c7ebb5bc2bcaffected
LinuxLinuxb2ef9f5a5cb37643ca5def3516c546457074b882 < c2af060d1c18beaec56351cf9c9bcbbc5af341a3affected
LinuxLinux5.8affected
LinuxLinux0 < 5.8unaffected
LinuxLinux6.1.93 <= 6.1.*unaffected
LinuxLinux6.6.33 <= 6.6.*unaffected
LinuxLinux6.8.12 <= 6.8.*unaffected
LinuxLinux6.9.3 <= 6.9.*unaffected
LinuxLinux6.10 <= *unaffected

Weaknesses

ADP Enrichment

CVE Program Container

Additional References

CISA ADP Vulnrichment

  • SSVC:
  • Exploitation: none
    • Automatable: no
    • Technical Impact: partial

References