CVE Catalog

CVE-2026-90020

Unknown
Published: Updated: Translated: NVD NIST

Summary

In the Linux kernel, gadget_dev_ioctl() reads dev->gadget before acquiring dev->lock, while dev->state is checked after acquiring the lock. A concurrent bind can change the device state, leaving a stale NULL gadget pointer and causing a NULL pointer dereference at gadget->ops->ioctl.

Risk Assessment

A concurrent bind and ioctl operation can trigger a NULL pointer dereference, leading to a kernel crash (denial of service).

Recommendation

Update the Linux kernel to a version where dev->gadget is read while holding dev->lock, ensuring consistent sampling of the pointer and device state.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: USB: gadget: fix NULL pointer dereference in gadget_dev_ioctl() gadget_dev_ioctl() reads dev->gadget before acquiring dev->lock, but dev->state is checked after acquiring the lock. Therefore a concurrent bind can change the device state between these operations, which can leave ioctl with a stale NULL gadget pointer and causing a NULL pointer dereference at gadget->ops->ioctl. Read dev->gadget while holding dev->lock so that the gadget pointer and device state are sampled consistently.

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