---
id: CVE-2026-93118
title: |-
  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
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(…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 055276c1320564b0192b3af323b8cc67f9b665e1 <
    d7ae1a48e70e9c3451b7dc7bc3896c82884bc4df
  - >-
    Linux >= 055276c1320564b0192b3af323b8cc67f9b665e1 <
    4aaad88f857498ed1294f061f0b25d27ae891c55
  - >-
    Linux >= 055276c1320564b0192b3af323b8cc67f9b665e1 <
    6182e708e2e1f55521c8a01d7535630ecc2d7df9
  - >-
    Linux >= 055276c1320564b0192b3af323b8cc67f9b665e1 <
    ff6e88e29965bd06f640e59acdcf0bbf04a7f55c
  - >-
    Linux >= 055276c1320564b0192b3af323b8cc67f9b665e1 <
    9e6f57107c1886052d4baaa047a2bc3d0e91be5d
  - >-
    Linux >= 055276c1320564b0192b3af323b8cc67f9b665e1 <
    97cee53a94be3bd4fd8fbed6071bd2f32dad1ab1
  - Linux 6.0
published: '2026-09-17'
updated: '2026-09-17'
sourceUpdated: '2026-09-17T17:18:06.427'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-93118'
references:
  - url: 'https://git.kernel.org/stable/c/4aaad88f857498ed1294f061f0b25d27ae891c55'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/6182e708e2e1f55521c8a01d7535630ecc2d7df9'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/97cee53a94be3bd4fd8fbed6071bd2f32dad1ab1'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/9e6f57107c1886052d4baaa047a2bc3d0e91be5d'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/d7ae1a48e70e9c3451b7dc7bc3896c82884bc4df'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/ff6e88e29965bd06f640e59acdcf0bbf04a7f55c'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
  - cve.org
ingestedAt: '2026-09-17T16:21:47.751Z'
epss: 0.00173
epssPercentile: 0.05895
---

## Overview

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.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
