Skip to content
Heist/ feed
Back to feed
UnratedFix available

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

Type: advisorySources: OSV

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.

Products
Kernel
Affected versions
Not specified
Fixed versions
5.10.258, 5.15.209, 6.1.175, 6.12.88, 6.18.30, 6.6.140, 7.0.7
CVEs
CVE-2026-46109
Confirmed fixed CVEs
Not specified
Updated in this feed
8 Nov 2026, 02:57 UTC · Revision 1

Source evidence

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

core-osv · Original source

Published 28 May 2026, 09:35 UTC

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.

osv:CVE-2026-46109

Kernel

Fixed versions: 5.10.258, 5.15.209, 6.1.175, 6.6.140, 6.12.88, 6.18.30, 7.0.7

Complete source record
{
  "id": "5af14fe94ea950bc3fd58ba55665529772bd83de10e388b3d26df475ee7f4c8c",
  "url": "https://osv.dev/vulnerability/CVE-2026-46109",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "usb: ulpi: fix memory leak on ulpi_register() error paths",
    "summary": "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.",
    "evidence": "osv:CVE-2026-46109",
    "products": [
      {
        "name": {
          "value": "Kernel",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "5.10.258",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "5.15.209",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.1.175",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.6.140",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.12.88",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.18.30",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "7.0.7",
            "evidence": "/affected/1/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "unknown",
    "structured": {
      "id": "CVE-2026-46109",
      "aliases": [
        "CVE-2026-46109"
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "2f70ba9dae13a190673cc3f9b4aad52179738f60"
                },
                {
                  "fixed": "0c2c0c6820fe96fa4be0a0499f8d3f3321b9af6c"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "ee248e6e941e4f2e634df2bd43e5f1ef810ab6df"
                },
                {
                  "fixed": "f1b855c00988a9cb41134cab7cf9faedba775dd9"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "272a9b26c336a295e4e209157fed809706c1b1f7"
                },
                {
                  "fixed": "7bd61ed0bf9f4f1f2673d489b3bda1555b48d054"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "aaeae6533d77e6ed4def85baec01e2815ebbef61"
                },
                {
                  "fixed": "b0c0d44adb55c66663886cb6e30ee92cbb0f5385"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "8763f8317bb389aded32a32b08f6751cfff657d2"
                },
                {
                  "fixed": "be2c1d825f54277472c87019e82013ac534ddc4c"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "38c28fe25611099230f0965c925499bfcf46a795"
                },
                {
                  "fixed": "2a71e01b2cf9b4329ff67102c1bea7448c2a2d2d"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "01af542392b5d41fd659d487015a71f627accce3"
                },
                {
                  "fixed": "f30ccfc2985590b33a23a3d8bed7ca16c0af551b"
                },
                {
                  "fixed": "0b9fcab1b8608d429e5f239afb197de928d4de7d"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "5.10.253"
                },
                {
                  "fixed": "5.10.258"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "5.15.203"
                },
                {
                  "fixed": "5.15.209"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "6.1.168"
                },
                {
                  "fixed": "6.1.175"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "6.6.134"
                },
                {
                  "fixed": "6.6.140"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "6.12.81"
                },
                {
                  "fixed": "6.12.88"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "6.18.22"
                },
                {
                  "fixed": "6.18.30"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "6.19.12"
                },
                {
                  "fixed": "6.20"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "a6e5461f076c2ef63159f18e5cdbd30b50f0bc15"
                }
              ]
            }
          ],
          "versions": [
            "v5.10.257",
            "v5.10.256",
            "v5.10.255",
            "v5.10.254",
            "v5.10.253",
            "v5.15.208",
            "v5.15.207",
            "v5.15.206",
            "v5.15.205",
            "v5.15.204",
            "v5.15.203",
            "v6.1.174",
            "v6.1.173",
            "v6.1.172",
            "v6.1.171",
            "v6.1.170",
            "v6.1.169",
            "v6.1.168",
            "v6.6.139",
            "v6.6.138",
            "v6.6.137",
            "v6.6.136",
            "v6.6.135",
            "v6.6.134",
            "v6.12.87",
            "v6.12.86",
            "v6.12.85",
            "v6.12.84",
            "v6.12.83",
            "v6.12.82",
            "v6.12.81",
            "v6.18.29",
            "v6.18.28",
            "v6.18.27",
            "v6.18.26",
            "v6.18.25",
            "v6.18.24",
            "v6.18.23",
            "v6.18.22",
            "v6.19.14",
            "v6.19.13",
            "v6.19.12"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-46109.json"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "5.10.258"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.11.0"
                },
                {
                  "fixed": "5.15.209"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.16.0"
                },
                {
                  "fixed": "6.1.175"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.2.0"
                },
                {
                  "fixed": "6.6.140"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.7.0"
                },
                {
                  "fixed": "6.12.88"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.13.0"
                },
                {
                  "fixed": "6.18.30"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.19.0"
                },
                {
                  "fixed": "7.0.7"
                }
              ]
            }
          ],
          "package": {
            "name": "Kernel",
            "ecosystem": "Linux"
          },
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-46109.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:53.402926803Z",
      "provider": "osv",
      "references": [
        "https://git.kernel.org/stable/c/0b9fcab1b8608d429e5f239afb197de928d4de7d",
        "https://git.kernel.org/stable/c/0c2c0c6820fe96fa4be0a0499f8d3f3321b9af6c",
        "https://git.kernel.org/stable/c/2a71e01b2cf9b4329ff67102c1bea7448c2a2d2d",
        "https://git.kernel.org/stable/c/7bd61ed0bf9f4f1f2673d489b3bda1555b48d054",
        "https://git.kernel.org/stable/c/b0c0d44adb55c66663886cb6e30ee92cbb0f5385",
        "https://git.kernel.org/stable/c/be2c1d825f54277472c87019e82013ac534ddc4c",
        "https://git.kernel.org/stable/c/f1b855c00988a9cb41134cab7cf9faedba775dd9",
        "https://git.kernel.org/stable/c/f30ccfc2985590b33a23a3d8bed7ca16c0af551b",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/46xxx/CVE-2026-46109.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-46109",
        "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
      ],
      "provider_metadata": {
        "cna_assigner": "Linux",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/46xxx/CVE-2026-46109.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-46109",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": null
  },
  "source_id": "core-osv",
  "document_id": 521998,
  "published_at": "2026-05-28T09:35:16.409+00:00"
}