CVE-2026-63874

net: mctp: usb: fix race between urb completion and rx_retry cancellation

High · published July 19, 2026

CVSS v3.1
7.8
EPSS
0%
Percentile
2.1
In the wild
Unconfirmed
What it is

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

net: mctp: usb: fix race between urb completion and rx_retry cancellation

It's possible that sequencing between setting ->stopped and cancelling

the rx_retry work (in ndo_stop) could leave us with an urb queued:

T1: ndo_stop T2: rx_retry_work

------------ ----------------

LD: ->stopped => false

ST: ->stopped <= true

usb_kill_urb()

mctp_usb_rx_queue()

usb_submit_urb()

cancel_delayed_work_sync()

That urb completion can then re-schedule rx_retry_work.

Strenghen the sequencing between the stop (preventing another requeue)

and the cancel by updating both atomically under a new rx lock. After

setting ->rx_stopped, and cancelling pending work, we know that the

requeue cannot occur, so all that's left is killing any pending urb.

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00126 · 2.1th percentile
Published
2026-07-19T14:18Z
EPSS history
Timeline
  • 19 JUL 14:18Z
    net: mctp: usb: fix race between urb completion and rx_retry cancellation
    cvelistv5