Skip to content
CVE PROGRAM SOURCE RECORDUnscored

CVE-2026-93118

usb: gadget: aspeed_udc: check endpoint DMA allocation

Description

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 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

  • 055276c1320564b0192b3af323b8cc67f9b665e1 to < d7ae1a48e70e9c3451b7dc7bc3896c82884bc4dfaffected
  • 055276c1320564b0192b3af323b8cc67f9b665e1 to < 4aaad88f857498ed1294f061f0b25d27ae891c55affected
  • 055276c1320564b0192b3af323b8cc67f9b665e1 to < 6182e708e2e1f55521c8a01d7535630ecc2d7df9affected
  • 055276c1320564b0192b3af323b8cc67f9b665e1 to < ff6e88e29965bd06f640e59acdcf0bbf04a7f55caffected
  • 055276c1320564b0192b3af323b8cc67f9b665e1 to < 9e6f57107c1886052d4baaa047a2bc3d0e91be5daffected
  • 055276c1320564b0192b3af323b8cc67f9b665e1 to < 97cee53a94be3bd4fd8fbed6071bd2f32dad1ab1affected

Linux Linux

Default version status: affected

  • 6.0affected
  • 0 to < 6.0unaffected
  • 6.1.188 to ≤ 6.1.*unaffected
  • 6.6.157 to ≤ 6.6.*unaffected
  • 6.12.110 to ≤ 6.12.*unaffected
  • 6.18.52 to ≤ 6.18.*unaffected
  • 7.2.6 to ≤ 7.2.*unaffected
  • 7.3 to ≤ *unaffected

References