CVE-2025-38448 usb: gadget: u_serial: Fix race condition in TTY wakeup

Medium 4.7 Published Updated

A race condition in the Linux kernel USB gadget driver can cause a null pointer dereference, leading to a system crash.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Local or same network only
Victim action needed
Not needed
Fix
Available

What is CVE-2025-38448?

CVE-2025-38448 is a medium-severity vulnerability in Debian Debian Linux, published on 25 Jul 2025. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

In the Linux kernel, the following vulnerability has been resolved:

usb: gadget: u_serial: Fix race condition in TTY wakeup

A race condition occurs when gs_start_io() calls either gs_start_rx() or gs_start_tx(), as those functions briefly drop the port_lock for usb_ep_queue(). This allows gs_close() and gserial_disconnect() to clear port.tty and port_usb, respectively.

Use the null-safe TTY Port helper function to wake up TTY.

Example CPU1: CPU2: gserial_connect() // lock gs_close() // await lock gs_start_rx() // unlock usb_ep_queue() gs_close() // lock, reset port.tty and unlock gs_start_rx() // lock tty_wakeup() // NPE

Weakness: CWE-362

Which versions are affected by CVE-2025-38448?

It affects 2 products.

Products include Debian Debian Linux, Linux kernel.

How do I fix CVE-2025-38448?

Apply the vendor's patch.

Is CVE-2025-38448 being exploited?

There is no known exploitation of CVE-2025-38448 in the wild and no public exploit code.

All Debian Debian Linux vulnerabilities

Sources

Also known as AZL-65690, BELL-CVE-2025-38448, DEBIAN-CVE-2025-38448, GHSA-x2v9-p3x8-4hp5, ROOT-OS-DEBIAN-11-CVE-2025-38448, ROOT-OS-DEBIAN-12-CVE-2025-38448 and 3 more.

Is CVE-2025-38448 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free