CVE-2026-64343 PUBLISHED

USB: ldusb: fix use-after-free on disconnect race

Assigner: Linux
Reserved: 19.07.2026 Published: 25.07.2026 Updated: 25.07.2026

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

USB: ldusb: fix use-after-free on disconnect race

mutex_unlock() may access the mutex structure after releasing the lock and therefore cannot be used to manage lifetime of objects directly (unlike spinlocks and refcounts). [1][2]

Use a kref to release the driver data to avoid use-after-free in mutex_unlock() when release() races with disconnect().

[1] a51749ab34d9 ("locking/mutex: Document that mutex_unlock() is non-atomic") [2] 2b9d9e0a9ba0 ("locking/mutex: Clarify that mutex_unlock(), and most other sleeping locks, can still use the lock object after it's unlocked")

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from ce0d7d3f575fc1ba6a89c3c651e710355590daff to fc55923a972e715f9a27187b47d4920709e23d85 (excl.)
  • affected from ce0d7d3f575fc1ba6a89c3c651e710355590daff to e5a9bdce4bfd3e2226b5f3df5fb8385d6935ee69 (excl.)
  • affected from ce0d7d3f575fc1ba6a89c3c651e710355590daff to af59829e67e11ba2511a9f8e4b9111afc7d1f550 (excl.)
  • affected from ce0d7d3f575fc1ba6a89c3c651e710355590daff to 02ca08fff74cf9b0a3c4d2cacde1c6edeeb95bb4 (excl.)
  • affected from ce0d7d3f575fc1ba6a89c3c651e710355590daff to d8f69404e1d671326f86d378b9f5bfbd56490e9d (excl.)
  • affected from ce0d7d3f575fc1ba6a89c3c651e710355590daff to 2107a4fc8ff1cf1d52f416c1e5cc8e97413a5915 (excl.)
  • affected from ce0d7d3f575fc1ba6a89c3c651e710355590daff to a3e794136ab5e3ad1e7019175a4b837aec86db4b (excl.)
  • affected from ce0d7d3f575fc1ba6a89c3c651e710355590daff to 19bdfc7b3c179331eafa423d87e1336f43bbfeb8 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 2.6.26 is affected
  • unaffected from 0 to 2.6.26 (excl.)
  • unaffected from 5.10.261 to 5.10.* (incl.)
  • unaffected from 5.15.212 to 5.15.* (incl.)
  • unaffected from 6.1.178 to 6.1.* (incl.)
  • unaffected from 6.6.145 to 6.6.* (incl.)
  • unaffected from 6.12.96 to 6.12.* (incl.)
  • unaffected from 6.18.39 to 6.18.* (incl.)
  • unaffected from 7.1.4 to 7.1.* (incl.)
  • unaffected from 7.2-rc3 to * (incl.)

References