CVE-2025-40305

CVE-2025-40305

published December 8, 2025

CVSS
—
EPSS
0%
Percentile
6.3
In the wild
Unconfirmed
What it is

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

9p/trans_fd: p9_fd_request: kick rx thread if EPOLLIN

p9_read_work() doesn't set Rworksched and doesn't do schedule_work(m->rq)

if list_empty(&m->req_list).

However, if the pipe is full, we need to read more data and this used to

work prior to commit aaec5a95d59615 ("pipe_read: don't wake up the writer

if the pipe is still full").

p9_read_work() does p9_fd_read() -> ... -> anon_pipe_read() which (before

the commit above) triggered the unnecessary wakeup. This wakeup calls

p9_pollwake() which kicks p9_poll_workfn() -> p9_poll_mux(), p9_poll_mux()

will notice EPOLLIN and schedule_work(&m->rq).

This no longer happens after the optimization above, change p9_fd_request()

to use p9_poll_mux() instead of only checking for EPOLLOUT.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00172 · 6.3th percentile
Published
2025-12-08T06:16Z
References (2)
EPSS history
Timeline
  • 08 DEC 00:46Z
    9p/trans_fd: p9_fd_request: kick rx thread if EPOLLIN
    cvelistv5