CVE-2026-64242 PUBLISHED

usb: gadget: net2280: Fix double free in probe error path

Assigner: Linux
Reserved: 19.07.2026 Published: 24.07.2026 Updated: 24.07.2026

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

usb: gadget: net2280: Fix double free in probe error path

usb_initialize_gadget() installs gadget_release() as the release callback for the embedded gadget device. The struct net2280 instance is therefore released through gadget_release() when the gadget device's last reference is dropped.

The probe error path calls net2280_remove(), which tears down the partially initialized device and drops the gadget reference with usb_put_gadget(). Calling kfree(dev) afterwards can free the same object again.

Drop the explicit kfree() and let the gadget device release callback handle the final free. This issue was found by a static analysis tool I am developing.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from f770fbec4165b1acfabdeadb01ad6008d2c537b5 to 71b3391dc81655ff058492f8e9d013b2c6e5747b (excl.)
  • affected from f770fbec4165b1acfabdeadb01ad6008d2c537b5 to 550fa4d071a8c8e53072900869d37ae6abf4999d (excl.)
  • affected from f770fbec4165b1acfabdeadb01ad6008d2c537b5 to c5b9fdb1e8ddf50bc6272927edb118679f170350 (excl.)
  • affected from f770fbec4165b1acfabdeadb01ad6008d2c537b5 to 085652fda7f38040d1a2c42d72614f418feb843f (excl.)
  • affected from f770fbec4165b1acfabdeadb01ad6008d2c537b5 to 48f89ead20e48d447ad29fa937b43b9fa981cf28 (excl.)
  • affected from f770fbec4165b1acfabdeadb01ad6008d2c537b5 to e6f8be12f0307145b9a6010f044925952b37de8b (excl.)
  • affected from f770fbec4165b1acfabdeadb01ad6008d2c537b5 to db2b72e83a0208ae2b3b270bf91662b1c6849a9b (excl.)
  • affected from f770fbec4165b1acfabdeadb01ad6008d2c537b5 to c8547c74988e0b5f4cbb1b895e2a57aae084f070 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 5.10 is affected
  • unaffected from 0 to 5.10 (excl.)
  • unaffected from 5.10.259 to 5.10.* (incl.)
  • unaffected from 5.15.210 to 5.15.* (incl.)
  • unaffected from 6.1.176 to 6.1.* (incl.)
  • unaffected from 6.6.143 to 6.6.* (incl.)
  • unaffected from 6.12.93 to 6.12.* (incl.)
  • unaffected from 6.18.35 to 6.18.* (incl.)
  • unaffected from 7.0.12 to 7.0.* (incl.)
  • unaffected from 7.1 to * (incl.)

References