CVE-2026-31759
N/A
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
usb: ulpi: fix double free in ulpi_register_interface() error path
When device_register() fails, ulpi_register() calls put_device() on ulpi->dev.
The device release callback ulpi_dev_release() drops the OF node reference and frees ulpi, but the current error path in ulpi_register_interface() then calls kfree(ulpi) again, causing a double free.
Let put_device() handle the cleanup through ulpi_dev_release() and avoid freeing ulpi again in ulpi_register_interface().
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 289fcff4bcdb1dcc0ce8788b7ea0f58a9e4a495f < 2f70ba9dae13a190673cc3f9b4aad52179738f60 | affected |
| Linux | Linux | 289fcff4bcdb1dcc0ce8788b7ea0f58a9e4a495f < ee248e6e941e4f2e634df2bd43e5f1ef810ab6df | affected |
| Linux | Linux | 289fcff4bcdb1dcc0ce8788b7ea0f58a9e4a495f < 272a9b26c336a295e4e209157fed809706c1b1f7 | affected |
| Linux | Linux | 289fcff4bcdb1dcc0ce8788b7ea0f58a9e4a495f < aaeae6533d77e6ed4def85baec01e2815ebbef61 | affected |
| Linux | Linux | 289fcff4bcdb1dcc0ce8788b7ea0f58a9e4a495f < 8763f8317bb389aded32a32b08f6751cfff657d2 | affected |
| Linux | Linux | 289fcff4bcdb1dcc0ce8788b7ea0f58a9e4a495f < 38c28fe25611099230f0965c925499bfcf46a795 | affected |
| Linux | Linux | 289fcff4bcdb1dcc0ce8788b7ea0f58a9e4a495f < a6e5461f076c2ef63159f18e5cdbd30b50f0bc15 | affected |
| Linux | Linux | 289fcff4bcdb1dcc0ce8788b7ea0f58a9e4a495f < 01af542392b5d41fd659d487015a71f627accce3 | affected |
| Linux | Linux | 4.2 | affected |
| Linux | Linux | 0 < 4.2 | unaffected |
| Linux | Linux | 5.10.253 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.203 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.168 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.134 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.81 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.22 <= 6.18.* | unaffected |
| Linux | Linux | 6.19.12 <= 6.19.* | unaffected |
| Linux | Linux | 7.0 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/2f70ba9dae13a190673cc3f9b4aad52179738f60
- https://git.kernel.org/stable/c/ee248e6e941e4f2e634df2bd43e5f1ef810ab6df
- https://git.kernel.org/stable/c/272a9b26c336a295e4e209157fed809706c1b1f7
- https://git.kernel.org/stable/c/aaeae6533d77e6ed4def85baec01e2815ebbef61
- https://git.kernel.org/stable/c/8763f8317bb389aded32a32b08f6751cfff657d2
- https://git.kernel.org/stable/c/38c28fe25611099230f0965c925499bfcf46a795
- https://git.kernel.org/stable/c/a6e5461f076c2ef63159f18e5cdbd30b50f0bc15
- https://git.kernel.org/stable/c/01af542392b5d41fd659d487015a71f627accce3
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.