Skip to content
CVE PROGRAM SOURCE RECORD7.8 High

CVE-2026-63874

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

Description

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.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • 0791c0327a6e4e7691d6fc5ad334c215de04dcc9 to < 9c46f3ee1837f6881cb99a52ffecb2760f11dc73affected
  • 0791c0327a6e4e7691d6fc5ad334c215de04dcc9 to < d90feaa3f74bea8dafb6494631a194c70e547d94affected
  • 0791c0327a6e4e7691d6fc5ad334c215de04dcc9 to < 54665dce982689e2fd99b32e9a0dcc204fda8a51affected

Linux Linux

Default version status: affected

  • 6.15affected
  • 0 to < 6.15unaffected
  • 6.18.36 to ≤ 6.18.*unaffected
  • 7.0.13 to ≤ 7.0.*unaffected
  • 7.1 to ≤ *unaffected

References