CVE-2026-80854usb: gadget: f_tcm: keep port count until LUN teardown completes
Updated under an hour ago ()
Does this affect you?
It affects Linux. Add what you run to find out whether that includes you.
No exploitation reported and no EPSS estimate yet.
Do this next
Free account, 1 product
In the Linux kernel, the following vulnerability has been resolved: usb: gadget: f_tcm: keep port count until LUN teardown completes tcm_usbg_drop_nexus() permits session removal once tpg_port_count reaches zero. However, usbg_port_unlink() currently decrements that count from the fabric_pre_unlink() callback, before core_dev_del_lun() waits for active se_lun references to drain. If removal of the last LUN races a nexus removal, the latter can observe a zero port count and call target_remove_session(). This frees sess_cmd_map while an in-flight struct usbg_cmd, including its work item, can still be accessed. Overlapping the last-LUN unlink with nexus removal reproduces this lifetime violation as a DEBUG_OBJECTS "free active" warning for usbg_cmd_work, followed by a target-core BUG/Oops. The generic target-core unlink path has no callback after core_dev_del_lun() completes. Add an optional fabric_post_unlink() callback and use it for the f_tcm port count. The count now remains nonzero until core_dev_del_lun() has finished draining active LUN references, preventing nexus removal from freeing the session during command completion.
- CVSS
- Not yet scored
- Weakness (CWE)
- Not given
- Known exploited
- Not in CISA's KEV catalog
- EPSS (exploitation in the next 30 days)
- Not loaded for this CVE
- Assigned by
- Linux
- NVD analysis
- Received
- Record last updated
- Sep 4, 2026
- First seen by InfoSec Signals
- Oct 9, 2026
Affected products
Linux Linux linux:linux (from the name) | from c52661d60f636d17e26ad834457db333bd1df494 before c494c5562ca69b61a82f566e3b87a445d2c28929; from c52661d60f636d17e26ad834457db333bd1df494 before c1f359d9a5efed458946063de65ddbeaacc4f165; from c52661d60f636d17e26ad834457db333bd1df494 before 178f59a0bccd3f66cdfa5184310f31a58b7257c4; from c52661d60f636d17e26ad834457db333bd1df494 before ad6f0375d2e93a1d8c015463e5e92dfcb26e311b; from c52661d60f636d17e26ad834457db333bd1df494 before 2efbfd42441d3ef8137aff2d59e9835e1d5ae780; from c52661d60f636d17e26ad834457db333bd1df494 before 85aa61fedcb4eb13f3dc5db73f6dc359f41f5d95; from c52661d60f636d17e26ad834457db333bd1df494 before bbd6aa311a9f4dd17822c7557451458d3d2e980b; from c52661d60f636d17e26ad834457db333bd1df494 before eaa96a8458f54d6cf0954242ab8b1df2a6fccafa; and 1 more ranges | CNA record |
References
- https://git.kernel.org/stable/c/c494c5562ca69b61a82f566e3b87a445d2c28929
- https://git.kernel.org/stable/c/c1f359d9a5efed458946063de65ddbeaacc4f165
- https://git.kernel.org/stable/c/178f59a0bccd3f66cdfa5184310f31a58b7257c4
- https://git.kernel.org/stable/c/ad6f0375d2e93a1d8c015463e5e92dfcb26e311b
- https://git.kernel.org/stable/c/2efbfd42441d3ef8137aff2d59e9835e1d5ae780
- https://git.kernel.org/stable/c/85aa61fedcb4eb13f3dc5db73f6dc359f41f5d95
- https://git.kernel.org/stable/c/bbd6aa311a9f4dd17822c7557451458d3d2e980b
- https://git.kernel.org/stable/c/eaa96a8458f54d6cf0954242ab8b1df2a6fccafa
- https://git.kernel.org/stable/c/c39d0916da47d94909391876c9e5bd429ea7b1b9
The CVE record on cve.org NVD's entry
The CVE record is authoritative. Products marked “from the name” were identified from the CNA's free-text names, not a CPE, and are matched less certainly. This product uses the NVD API but is not endorsed or certified by the NVD.