CVE-2026-46109

usb: ulpi: fix memory leak on ulpi_register() error paths

MEDIUM
5.5
CVSS Score
Published: May 28, 2026 at 09:35 AM UTC
Updated: June 27, 2026 at 11:41 AM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
MEDIUM5.5
Exploit prediction
EPSS 0.1%

Description

In the Linux kernel, the following vulnerability has been resolved: usb: ulpi: fix memory leak on ulpi_register() error paths Commit 01af542392b5 ("usb: ulpi: fix double free in ulpi_register_interface() error path") removed kfree(ulpi) from ulpi_register_interface() to fix a double-free when device_register() fails. But when ulpi_of_register() or ulpi_read_id() fail before device_register() is called, the ulpi allocation is leaked. Add kfree(ulpi) on both error paths to properly clean up the allocation.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

v ≥ 6.19.125.10.253 ≤ v < 5.10.2585.15.203 ≤ v < 5.15.2096.1.168 ≤ v < 6.1.1756.12.81 ≤ v < 6.12.886.18.22 ≤ v < 6.18.306.19.12 ≤ v < 6.206.19.12 ≤ v < 7.06.6.134 ≤ v < 6.6.1407.0 ≤ v < 7.0.77.0 ≤ v < 7.17.0.1 ≤ v < 7.0.71af542392b5d41fd659d487015a71f627accce3272a9b26c336a295e4e209157fed809706c1b1f72f70ba9dae13a190673cc3f9b4aad52179738f6038c28fe25611099230f0965c925499bfcf46a7955.10.2535.15.2036.1.1686.12.816.18.226.19.126.6.1347.07.0 rc77.1 rc17.1 rc28763f8317bb389aded32a32b08f6751cfff657d2a6e5461f076c2ef63159f18e5cdbd30b50f0bc15aaeae6533d77e6ed4def85baec01e2815ebbef61ee248e6e941e4f2e634df2bd43e5f1ef810ab6df
Vendor states this is fixed in 0b9fcab1b8608d429e5f239afb197de928d4de7d (fixed)
Vendor states this is fixed in 0c2c0c6820fe96fa4be0a0499f8d3f3321b9af6c (fixed)
Vendor states this is fixed in 2a71e01b2cf9b4329ff67102c1bea7448c2a2d2d (fixed)
Vendor states this is fixed in 7bd61ed0bf9f4f1f2673d489b3bda1555b48d054 (fixed)
Vendor states this is fixed in b0c0d44adb55c66663886cb6e30ee92cbb0f5385 (fixed)
Vendor states this is fixed in be2c1d825f54277472c87019e82013ac534ddc4c (fixed)
Vendor states this is fixed in f1b855c00988a9cb41134cab7cf9faedba775dd9 (fixed)
Vendor states this is fixed in f30ccfc2985590b33a23a3d8bed7ca16c0af551b (fixed)
Vendor states this is fixed in 5.10.258 (unaffected)
Vendor states this is fixed in 5.15.209 (unaffected)
Vendor states this is fixed in 6.1.175 (unaffected)
Vendor states this is fixed in 6.12.88 (unaffected)
Vendor states this is fixed in 6.18.30 (unaffected)
Affected range stops below 6.20, so it looks safe — our inference, not a vendor statement
Vendor states this is fixed in 6.6.140 (unaffected)
Vendor states this is fixed in 7.0 (unaffected)
Vendor states this is fixed in 7.0.7 (unaffected)
Vendor states this is fixed in 7.1 (unaffected)

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
NONE
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusUNDERGOING ANALYSIS
CWE
CWE-401

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card