CVE-2026-74680

usb: atm: cxacru: properly kill rcv_urb on error in cxacru_cm()

State
Published
Severity
Not scored
Published
Aug 22, 2026
Updated
Aug 22, 2026
Reserved
Aug 15, 2026

Read the record on cve.org

Description

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

usb: atm: cxacru: properly kill rcv_urb on error in cxacru_cm()

If cxacru_cm() encounters an error while submitting or waiting for snd_urb, it aborts and returns the error without killing the already submitted rcv_urb. This leaves the rcv_urb active.

When this happens during initialization (e.g., in cxacru_atm_start()), the driver may ignore the error and proceed to call cxacru_poll_status(), which invokes cxacru_cm() again. Attempting to submit the still-active rcv_urb triggers a warning in usb_submit_urb():

cxacru 1-1:1.0: send of cm 0x84 failed (-104) ATM dev 0: cxacru_atm_start: CHIP_ADSL_LINE_START returned -104 ------------[ cut here ]------------ URB ffff88812658d200 submitted while active WARNING: drivers/usb/core/urb.c:379 at usb_submit_urb+0x79/0x18b0 drivers/usb/core/urb.c:379 ... Call Trace: <TASK> cxacru_cm+0x21a/0xf10 drivers/usb/atm/cxacru.c:631 cxacru_cm_get_array drivers/usb/atm/cxacru.c:722 [inline] cxacru_poll_status+0x178/0x1110 drivers/usb/atm/cxacru.c:828 cxacru_atm_start+0x185/0x360 drivers/usb/atm/cxacru.c:814 usbatm_atm_init+0x144/0x3a0 drivers/usb/atm/usbatm.c:927 usbatm_usb_probe+0x15cb/0x1db0 drivers/usb/atm/usbatm.c:1178 cxacru_usb_probe+0x17f/0x220 drivers/usb/atm/cxacru.c:1370 ...

To fix this, ensure that rcv_urb is properly killed if cxacru_cm() aborts early. We can safely call usb_kill_urb() on rcv_urb in the error path, as it is safe to call even if the URB is not active (e.g., if it failed to submit in the first place, or if it already completed).

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 1b0e614652344a2d39eb336f3dc07651782883bf to before 6133b461058316e3ccba7331f974d110d4c08b23Affected
  • 1b0e614652344a2d39eb336f3dc07651782883bf to before 61093d7f1144f6a15bac505df35e5f535ade2ac1Affected
  • 1b0e614652344a2d39eb336f3dc07651782883bf to before 645d98dbccdbfdbf0129f48822af7183492de091Affected
  • 1b0e614652344a2d39eb336f3dc07651782883bf to before 993f7677949e3d72e360e86eed1f41c2511f75edAffected
  • 1b0e614652344a2d39eb336f3dc07651782883bf to before 939b6a41f681aea52af678053072ee443068e93eAffected
  • 1b0e614652344a2d39eb336f3dc07651782883bf to before 2f73a065791d2a8e3f0bdf29248e33600359e865Affected
  • 1b0e614652344a2d39eb336f3dc07651782883bf to before 0af047703dbed8224552587ed436f14a24371b46Affected
  • 1b0e614652344a2d39eb336f3dc07651782883bf to before c2f811314be351d86b6ab41e9297ae80d8da6f86Affected
LinuxLinux
  • 2.6.13Affected
  • before 2.6.13Not affected
  • 5.10.265 through 5.10.*Not affected
  • 5.15.216 through 5.15.*Not affected
  • 6.1.183 through 6.1.*Not affected
  • 6.6.152 through 6.6.*Not affected
  • 6.12.104 through 6.12.*Not affected
  • 6.18.45 through 6.18.*Not affected
  • 7.1.9 through 7.1.*Not affected
  • 7.2 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.