CVE-2026-93118
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
usb: gadget: aspeed_udc: check endpoint DMA allocation
ast_udc_probe() allocates a coherent DMA buffer used as the backing store for endpoint buffers. ast_udc_init_ep() derives per-endpoint buffer pointers from udc->ep0_buf, so a failed allocation is dereferenced during probe.
Check the allocation before endpoint setup. The existing probe error path called ast_udc_remove(), which unregisters the gadget unconditionally and is not safe before usb_add_gadget_udc() succeeds. Add a local cleanup helper for probe failures so pre-registration failures only unwind the resources that were actually initialized.
This was found by a local static analysis checker for unchecked allocator returns while scanning Linux 6.16. The change was checked by applying it to current mainline and by running checkpatch. I do not have access to Aspeed UDC hardware, so no runtime testing was performed.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 055276c1320564b0192b3af323b8cc67f9b665e1 < d7ae1a48e70e9c3451b7dc7bc3896c82884bc4df | affected |
| Linux | Linux | 055276c1320564b0192b3af323b8cc67f9b665e1 < 4aaad88f857498ed1294f061f0b25d27ae891c55 | affected |
| Linux | Linux | 055276c1320564b0192b3af323b8cc67f9b665e1 < 6182e708e2e1f55521c8a01d7535630ecc2d7df9 | affected |
| Linux | Linux | 055276c1320564b0192b3af323b8cc67f9b665e1 < ff6e88e29965bd06f640e59acdcf0bbf04a7f55c | affected |
| Linux | Linux | 055276c1320564b0192b3af323b8cc67f9b665e1 < 9e6f57107c1886052d4baaa047a2bc3d0e91be5d | affected |
| Linux | Linux | 055276c1320564b0192b3af323b8cc67f9b665e1 < 97cee53a94be3bd4fd8fbed6071bd2f32dad1ab1 | affected |
| Linux | Linux | 6.0 | affected |
| Linux | Linux | 0 < 6.0 | unaffected |
| Linux | Linux | 6.1.188 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.157 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.110 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.52 <= 6.18.* | unaffected |
| Linux | Linux | 7.2.6 <= 7.2.* | unaffected |
| Linux | Linux | 7.3-rc1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/d7ae1a48e70e9c3451b7dc7bc3896c82884bc4df
- https://git.kernel.org/stable/c/4aaad88f857498ed1294f061f0b25d27ae891c55
- https://git.kernel.org/stable/c/6182e708e2e1f55521c8a01d7535630ecc2d7df9
- https://git.kernel.org/stable/c/ff6e88e29965bd06f640e59acdcf0bbf04a7f55c
- https://git.kernel.org/stable/c/9e6f57107c1886052d4baaa047a2bc3d0e91be5d
- https://git.kernel.org/stable/c/97cee53a94be3bd4fd8fbed6071bd2f32dad1ab1
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.