In the Linux kernel, the following vulnerability has been resolved:
usb: gadget: f_fs: initialize reset_work at allocation time
ffs_fs_kill_sb() unconditionally calls cancel_work_sync() on ffs->reset_work when a functionfs instance is unmounted:
ffs_data_reset(ffs); cancel_work_sync(&ffs->reset_work);
However ffs->reset_work is only ever initialized via INIT_WORK() in ffs_func_set_alt() and ffs_func_disable(), and only on the FFS_DEACTIVATED path. That state is reached solely by ffs_data_closed() when the instance is mounted with the "no_disconnect" option, so for the common case (no "no_disconnect", or mounted and unmounted without ever being deactivated) reset_work is never initialized.
ffs_data_new() allocates the ffs_data with kzalloc_obj() and does not initialize reset_work, and ffs_data_reset()/ffs_data_clear() do not touch it either, so reset_work.func is left NULL. cancel_work_sync() on such a work then trips the WARN_ON(!work->func) guard in __flush_work():
WARNING: kernel/workqueue.c:4301 at __flush_work+0x330/0x360, CPU#3: umount Call trace: __flush_work cancel_work_sync ffs_fs_kill_sb [usb_f_fs] deactivate_locked_super deactivate_super cleanup_mnt __cleanup_mnt task_work_run exit_to_user_mode_loop el0_svc
On older kernels cancel_work_sync() on a zero-initialized work struct was a silent no-op, which hid the missing initialization.
Initialize reset_work once in ffs_data_new() so it is always valid for the lifetime of the ffs_data, and drop the now-redundant INIT_WORK() calls from the two deactivation paths.
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linuxUpgrade linux-6.12 | Aug 9, 2026 | Aug 9, 2026 |
| Ubuntu | — | Upgrade linux-image-gke-64k-hwe-26.04Upgrade linux-image-realtime-hwe-26.04Upgrade linux-image-genericUpgrade linux-image-7.0.0-1011-oracle-64kUpgrade linux-image-7.0.0-2018-nvidia-bosUpgrade linux-image-realtime-64k-7.0Upgrade linux-image-7.0.0-31-generic-64kUpgrade linux-image-oracle-7.0Upgrade linux-image-gke-hwe-26.04Upgrade linux-image-nvidia-bos-7.0Upgrade linux-image-gcpUpgrade linux-image-oracle-64k-7.0Upgrade linux-image-aws-64kUpgrade linux-image-7.0.0-1011-oracleUpgrade linux-image-generic-7.0Upgrade linux-image-oracle-64kUpgrade linux-image-generic-64kUpgrade linux-image-nvidia-hwe-26.04Upgrade linux-image-generic-64k-7.0Upgrade linux-image-nvidiaUpgrade linux-image-virtualUpgrade linux-image-nvidia-64kUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-nvidia-64k-hwe-26.04Upgrade linux-image-7.0.0-1013-oemUpgrade linux-image-generic-hwe-26.04Upgrade linux-image-7.0.0-1019-raspi-realtimeUpgrade linux-image-azure-7.0Upgrade linux-image-nvidia-bos-64kUpgrade linux-image-oem-7.0Upgrade linux-image-realtime-64k-hwe-26.04Upgrade linux-image-7.0.0-1006-gke-64kUpgrade linux-image-gkeUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-7.0.0-1013-ibmUpgrade linux-image-7.0.0-31-genericUpgrade linux-image-raspi-realtimeUpgrade linux-image-7.0.0-1011-gcpUpgrade linux-image-virtual-7.0Upgrade linux-image-7.0.0-1014-azureUpgrade linux-image-nvidia-64k-7.0Upgrade linux-image-azureUpgrade linux-image-ibm-7.0Upgrade linux-image-generic-64k-hwe-26.04Upgrade linux-image-nvidia-bosUpgrade linux-image-gke-64k-7.0Upgrade linux-image-oem-26.04bUpgrade linux-image-7.0.0-1018-nvidiaUpgrade linux-image-raspi-realtime-7.0Upgrade linux-image-7.0.0-31-realtimeUpgrade linux-image-7.0.0-1018-nvidia-64kUpgrade linux-image-oracleUpgrade linux-image-aws-64k-7.0Upgrade linux-image-gcp-7.0Upgrade linux-image-7.0.0-31-realtime-64kUpgrade linux-image-nvidia-7.0Upgrade linux-image-7.0.0-1012-aws-64kUpgrade linux-image-7.0.0-1019-raspiUpgrade linux-image-gke-7.0Upgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-gcp-64k-7.0Upgrade linux-image-gke-64kUpgrade linux-image-ibmUpgrade linux-image-7.0.0-1012-awsUpgrade linux-image-virtual-hwe-26.04Upgrade linux-image-realtimeUpgrade linux-image-oem-26.04aUpgrade linux-image-awsUpgrade linux-image-gcp-64kUpgrade linux-image-7.0.0-2018-nvidia-bos-64kUpgrade linux-image-azure-lts-26.04Upgrade linux-image-7.0.0-1006-gkeUpgrade linux-image-raspi-7.0Upgrade linux-image-7.0.0-1011-gcp-64kUpgrade linux-image-oem-26.04Upgrade linux-image-aws-7.0Upgrade linux-image-realtime-7.0Upgrade linux-image-nvidia-bos-64k-7.0Upgrade linux-image-realtime-64kUpgrade linux-image-raspi | Sep 14, 2026 | Sep 7, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Aug 14, 2026 | Aug 6, 2026 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub