CVE-2026-31754
mediumpriority · track · 22EPSS 0.001 · 2 %ileDEEURUUSEPSS · scored 2026-10-27
In the Linux kernel, the following vulnerability has been resolved: usb: cdns3: gadget: fix state inconsistency on gadget init failure When cdns3_gadget_start() fails, the DRD hardware is left in gadget mode while software state remains INACTIVE, creating hardware/software state inconsistency. When switching to host mode via sysfs: echo host > /sys/class/usb_role/13180000.usb-role-switch/role The role state is not set to CDNS_ROLE_STATE_ACTIVE due to the error, so cdns_role_stop() skips cleanup because state is still INACTIVE. This violates the DRD controller design specification (Figure22), which requires returning to idle state before switching roles. This leads to a synchronous external abort in xhci_gen_setup() when setting up the host controller: [ 516.440698] configfs-gadget 13180000.usb: failed to start g1: -19 [ 516.442035] cdns-usb3 13180000.usb: Failed to add gadget [ 516.443278] cdns-usb3 13180000.usb: set role 2 has failed ... [ 1301.375722] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller [ 1301.377716] Internal error: synchronous external abort: 96000010 [#1] PREEMPT SMP [ 1301.382485] pc : xhci_gen_setup+0xa4/0x408 [ 1301.393391] backtrace: ... xhci_gen_setup+0xa4/0x408 <-- CRASH xhci_plat_setup+0x44/0x58 usb_add_hcd+0x284/0x678 ... cdns_role_set+0x9c/0xbc <-- Role switch Fix by calling cdns_drd_gadget_off() in the error path to properly clean up the DRD gadget state.
cvss
Technical severity, 0–10. One row per scoring source.
base score 0–10 · higher = more severe · hover a vector to decode⚠ sources disagree · medium–high · 5.1–7
weaknesses
The CWE weakness classes this flaw belongs to.
affected products (56)
Products and version ranges known to be affected.
- Red Hat OpenShift Container Platformall versionscert_bundDEcpe:/a:redhat:openshift:container_platform
advisories (1)
Vendor and ecosystem advisories describing this.
- WID-SEC-W-2026-1346Linux Kernel: Mehrere SchwachstellenDeutsch2026-05-03csaf · cert_bundDE
Ein entfernter Angreifer kann mehrere Schwachstellen im Linux Kernel ausnutzen, um Root-Rechte zu erlangen, um Sicherheitsmechanismen zu umgehen, einen Denial-of-Service-Zustand herbeizuführen oder Auswirkungen unbestimmter Art zu erzielen.
also known as (4)
Other names and identifiers for this entity.
sources
Which sources assert this record, and when.
references (16)
External citations — patches, advisories, analysis.
- https://nvd.nist.gov/vuln/detail/CVE-2026-31754cnnvd
- https://www.kernel.org/category/releases.htmlPatchcnnvd
- https://git.kernel.org/stable/c/5a85599ca4d2584d89dc69f4fc49303b75a42338enisa_euvd
- https://git.kernel.org/stable/c/9b1d301fbae837bf6979a19030b81d869bb15f7aenisa_euvd
- https://git.kernel.org/stable/c/b490f0e477d26d29ed51e5dc47e3b9bd31bcb49fenisa_euvd
- https://git.kernel.org/stable/c/c32f8748d70c8fc77676ad92ed76cede17bf2c48enisa_euvd
- https://git.kernel.org/stable/c/c7e475ae3a5593c5db21b3b7dca4ba8bdac9b47fenisa_euvd
- https://git.kernel.org/stable/c/cfca84f5986afceb63a3adf39d4a98e915aebbc2enisa_euvd
Attackers weaponise vulnerabilities like this against internet-exposed services. See what is exposed on your perimeter with a free passive scan.
Free scan