Skip to main content
← All vulnerabilities
CVE-2026-31399

nvdimm/bus: Fix potential use after free in asynchronous initialization

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 4.5, 4.10, 4.15, 4.19, 4.20
None on Exploit-DB, Metasploit or GitHub

Summary

In the Linux kernel, the following vulnerability has been resolved: nvdimm/bus: Fix potential use after free in asynchronous initialization Dingisoul with KASAN reports a use after free if device_add() fails in nd_async_device_register(). Commit b6eae0f61db2 ("libnvdimm: Hold reference on parent while scheduling async init") correctly added a reference on the parent device to be held until asynchronous initialization was complete. However, if device_add() results in an allocation failure the ref count of the device drops to 0 prior to the parent pointer being accessed. Thus resulting in use after free. The bug bot AI correctly identified the fix. Save a reference to the parent pointer to be used to drop the parent reference regardless of the outcome of device_add().

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    From 4.4.164 · fixed in 4.5; From 4.9.137 · fixed in 4.10; From 4.14.81 · fixed in 4.15; From 4.18.19 · fixed in 4.19; From 4.19.2 · fixed in 4.20

  • Linux Linux

    4.20

References 8

git.kernel.org