{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2025-21838","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2024-12-29T08:45:45.777Z","datePublished":"2025-03-07T09:09:57.515Z","dateUpdated":"2026-05-11T21:07:29.049Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-05-11T21:07:29.049Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nusb: gadget: core: flush gadget workqueue after device removal\n\ndevice_del() can lead to new work being scheduled in gadget->work\nworkqueue. This is observed, for example, with the dwc3 driver with the\nfollowing call stack:\n  device_del()\n    gadget_unbind_driver()\n      usb_gadget_disconnect_locked()\n        dwc3_gadget_pullup()\n\t  dwc3_gadget_soft_disconnect()\n\t    usb_gadget_set_state()\n\t      schedule_work(&gadget->work)\n\nMove flush_work() after device_del() to ensure the workqueue is cleaned\nup."}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/usb/gadget/udc/core.c"],"versions":[{"version":"5702f75375aa9ecf8ad3431aef3fe6ce8c8dbd15","lessThan":"e3bc1a9a67ce33a2e761e6e7b7c2afc6cb9b7266","status":"affected","versionType":"git"},{"version":"5702f75375aa9ecf8ad3431aef3fe6ce8c8dbd15","lessThan":"859cb45aefa6de823b2fa7f229fe6d9562c9f3b7","status":"affected","versionType":"git"},{"version":"5702f75375aa9ecf8ad3431aef3fe6ce8c8dbd15","lessThan":"f894448f3904d7ad66fecef8f01fe0172629e091","status":"affected","versionType":"git"},{"version":"5702f75375aa9ecf8ad3431aef3fe6ce8c8dbd15","lessThan":"97695b5a1b5467a4f91194db12160f56da445dfe","status":"affected","versionType":"git"},{"version":"5702f75375aa9ecf8ad3431aef3fe6ce8c8dbd15","lessThan":"399a45e5237ca14037120b1b895bd38a3b4492ea","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/usb/gadget/udc/core.c"],"versions":[{"version":"3.12","status":"affected"},{"version":"0","lessThan":"3.12","status":"unaffected","versionType":"semver"},{"version":"6.1.130","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.80","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.12.16","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.13.4","lessThanOrEqual":"6.13.*","status":"unaffected","versionType":"semver"},{"version":"6.14","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"3.12","versionEndExcluding":"6.1.130"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"3.12","versionEndExcluding":"6.6.80"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"3.12","versionEndExcluding":"6.12.16"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"3.12","versionEndExcluding":"6.13.4"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"3.12","versionEndExcluding":"6.14"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/e3bc1a9a67ce33a2e761e6e7b7c2afc6cb9b7266"},{"url":"https://git.kernel.org/stable/c/859cb45aefa6de823b2fa7f229fe6d9562c9f3b7"},{"url":"https://git.kernel.org/stable/c/f894448f3904d7ad66fecef8f01fe0172629e091"},{"url":"https://git.kernel.org/stable/c/97695b5a1b5467a4f91194db12160f56da445dfe"},{"url":"https://git.kernel.org/stable/c/399a45e5237ca14037120b1b895bd38a3b4492ea"}],"title":"usb: gadget: core: flush gadget workqueue after device removal","x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CVE Program Container","references":[{"url":"https://lists.debian.org/debian-lts-announce/2025/05/msg00045.html"}],"providerMetadata":{"orgId":"af854a3a-2127-422b-91ae-364da2661108","shortName":"CVE","dateUpdated":"2025-11-03T19:37:56.459Z"}}]}}