CVE-2026-74680
Full vulnerability record from the local CVENow database.
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).
View original CVE JSON
{
"id": "CVE-2026-74680",
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"published": "2026-08-22T16:16:42.227",
"lastModified": "2026-11-06T17:19:54.323",
"vulnStatus": "Received",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nusb: atm: cxacru: properly kill rcv_urb on error in cxacru_cm()\n\nIf cxacru_cm() encounters an error while submitting or waiting for snd_urb,\nit aborts and returns the error without killing the already submitted\nrcv_urb. This leaves the rcv_urb active.\n\nWhen this happens during initialization (e.g., in cxacru_atm_start()), the\ndriver may ignore the error and proceed to call cxacru_poll_status(), which\ninvokes cxacru_cm() again. Attempting to submit the still-active rcv_urb\ntriggers a warning in usb_submit_urb():\n\ncxacru 1-1:1.0: send of cm 0x84 failed (-104)\nATM dev 0: cxacru_atm_start: CHIP_ADSL_LINE_START returned -104\n------------[ cut here ]------------\nURB ffff88812658d200 submitted while active\nWARNING: drivers/usb/core/urb.c:379 at usb_submit_urb+0x79/0x18b0\ndrivers/usb/core/urb.c:379\n...\nCall Trace:\n <TASK>\n cxacru_cm+0x21a/0xf10 drivers/usb/atm/cxacru.c:631\n cxacru_cm_get_array drivers/usb/atm/cxacru.c:722 [inline]\n cxacru_poll_status+0x178/0x1110 drivers/usb/atm/cxacru.c:828\n cxacru_atm_start+0x185/0x360 drivers/usb/atm/cxacru.c:814\n usbatm_atm_init+0x144/0x3a0 drivers/usb/atm/usbatm.c:927\n usbatm_usb_probe+0x15cb/0x1db0 drivers/usb/atm/usbatm.c:1178\n cxacru_usb_probe+0x17f/0x220 drivers/usb/atm/cxacru.c:1370\n...\n\nTo fix this, ensure that rcv_urb is properly killed if cxacru_cm() aborts\nearly. We can safely call usb_kill_urb() on rcv_urb in the error path, as\nit is safe to call even if the URB is not active (e.g., if it failed to\nsubmit in the first place, or if it already completed)."
},
{
"lang": "es",
"value": "En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:\n\nusb: atm: cxacru: terminar correctamente rcv_urb en caso de error en cxacru_cm()\n\nSi cxacru_cm() encuentra un error al enviar o esperar por snd_urb, aborta y devuelve el error sin terminar el rcv_urb ya enviado. Esto deja el rcv_urb activo.\n\nCuando esto ocurre durante la inicialización (p. ej., en cxacru_atm_start()), el controlador puede ignorar el error y proceder a llamar a cxacru_poll_status(), lo que invoca a cxacru_cm() de nuevo. Intentar enviar el rcv_urb aún activo dispara una advertencia en usb_submit_urb():\n\ncxacru 1-1:1.0: el envío de cm 0x84 falló (-104)\nATM dev 0: cxacru_atm_start: CHIP_ADSL_LINE_START devolvió -104\n------------[ cortar aquí ]------------\nURB ffff88812658d200 enviado mientras está activo\nADVERTENCIA: drivers/usb/core/urb.c:379 en usb_submit_urb+0x79/0x18b0\ndrivers/usb/core/urb.c:379\n...\nTraza de Llamada:\n <TAREA>\n cxacru_cm+0x21a/0xf10 drivers/usb/atm/cxacru.c:631\n cxacru_cm_get_array drivers/usb/atm/cxacru.c:722 [en línea]\n cxacru_poll_status+0x178/0x1110 drivers/usb/atm/cxacru.c:828\n cxacru_atm_start+0x185/0x360 drivers/usb/atm/cxacru.c:814\n usbatm_atm_init+0x144/0x3a0 drivers/usb/atm/usbatm.c:927\n usbatm_usb_probe+0x15cb/0x1db0 drivers/usb/atm/usbatm.c:1178\n cxacru_usb_probe+0x17f/0x220 drivers/usb/atm/cxacru.c:1370\n...\n\nPara solucionar esto, asegúrese de que rcv_urb se termine correctamente si cxacru_cm() aborta prematuramente. Podemos llamar de forma segura a usb_kill_urb() en rcv_urb en la ruta de error, ya que es seguro llamarla incluso si el URB no está activo (p. ej., si falló al enviarse en primer lugar, o si ya se completó)."
}
],
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "unaffected",
"programFiles": [
"drivers/usb/atm/cxacru.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "1b0e614652344a2d39eb336f3dc07651782883bf",
"lessThan": "6133b461058316e3ccba7331f974d110d4c08b23",
"versionType": "git",
"status": "affected"
},
{
"version": "1b0e614652344a2d39eb336f3dc07651782883bf",
"lessThan": "61093d7f1144f6a15bac505df35e5f535ade2ac1",
"versionType": "git",
"status": "affected"
},
{
"version": "1b0e614652344a2d39eb336f3dc07651782883bf",
"lessThan": "645d98dbccdbfdbf0129f48822af7183492de091",
"versionType": "git",
"status": "affected"
},
{
"version": "1b0e614652344a2d39eb336f3dc07651782883bf",
"lessThan": "993f7677949e3d72e360e86eed1f41c2511f75ed",
"versionType": "git",
"status": "affected"
},
{
"version": "1b0e614652344a2d39eb336f3dc07651782883bf",
"lessThan": "939b6a41f681aea52af678053072ee443068e93e",
"versionType": "git",
"status": "affected"
},
{
"version": "1b0e614652344a2d39eb336f3dc07651782883bf",
"lessThan": "2f73a065791d2a8e3f0bdf29248e33600359e865",
"versionType": "git",
"status": "affected"
},
{
"version": "1b0e614652344a2d39eb336f3dc07651782883bf",
"lessThan": "0af047703dbed8224552587ed436f14a24371b46",
"versionType": "git",
"status": "affected"
},
{
"version": "1b0e614652344a2d39eb336f3dc07651782883bf",
"lessThan": "c2f811314be351d86b6ab41e9297ae80d8da6f86",
"versionType": "git",
"status": "affected"
}
]
},
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "affected",
"programFiles": [
"drivers/usb/atm/cxacru.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "2.6.13",
"status": "affected"
},
{
"version": "0",
"lessThan": "2.6.13",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "5.10.265",
"lessThanOrEqual": "5.10.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "5.15.216",
"lessThanOrEqual": "5.15.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.1.183",
"lessThanOrEqual": "6.1.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.6.152",
"lessThanOrEqual": "6.6.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.12.104",
"lessThanOrEqual": "6.12.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.18.45",
"lessThanOrEqual": "6.18.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "7.1.9",
"lessThanOrEqual": "7.1.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "7.2",
"lessThanOrEqual": "*",
"versionType": "original_commit_for_fix",
"status": "unaffected"
}
]
}
]
}
],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-11-06T17:01:09.846615Z",
"id": "CVE-2026-74680",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"references": [
{
"url": "https://git.kernel.org/stable/c/0af047703dbed8224552587ed436f14a24371b46",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/2f73a065791d2a8e3f0bdf29248e33600359e865",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/61093d7f1144f6a15bac505df35e5f535ade2ac1",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/6133b461058316e3ccba7331f974d110d4c08b23",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/645d98dbccdbfdbf0129f48822af7183492de091",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/939b6a41f681aea52af678053072ee443068e93e",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/993f7677949e3d72e360e86eed1f41c2511f75ed",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/c2f811314be351d86b6ab41e9297ae80d8da6f86",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
]
}