CVE Catalog

CVE-2026-93118

Unknown
Published: Translated: NVD NIST

Summary

In the Linux kernel, ast_udc_probe() in the USB gadget aspeed_udc driver allocates a coherent DMA buffer used as backing store for endpoint buffers, and ast_udc_init_ep() derives per-endpoint pointers from udc->ep0_buf. A failed allocation is dereferenced during probe, and the existing error path calls ast_udc_remove(), which is unsafe before usb_add_gadget_udc() succeeds. The fix adds an allocation check and a local cleanup helper.

Risk Assessment

A failed DMA allocation leads to a NULL pointer dereference and kernel crash, and the incorrect error path may leave resources in an inconsistent state. Affects systems with an Aspeed UDC controller.

Recommendation

Update the Linux kernel to a version containing the aspeed_udc driver fix. Monitor kernel logs for DMA allocation errors during boot.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

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.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS