← Back to CVE Explorer

CVE-2026-93283

Full vulnerability record from the local CVENow database.

Description

In the Linux kernel, the following vulnerability has been resolved: i3c: master: Fix device_register() error path When device_register() fails in i3c_master_register_new_i3c_devs(), put_device() is called to drop the reference taken by device_register(). That drops the last reference, so the device's release callback i3c_device_release() runs and frees the i3c_device. Two problems follow from that: i3c_device_release() does WARN_ON(i3cdev->desc), so it warns because desc->dev->desc still points back at the descriptor. Clear it before calling put_device(). After put_device() frees the i3c_device, desc->dev is left pointing at freed memory, so clear desc->dev as well. That prevents, for example, i3c_master_unregister_i3c_devs() seeing desc->dev as non-NULL and dereferencing it.

Severity
Not scored
CVSS score
Not available
Vulnerability status
Received
Source identifier
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Published
2026-09-24 16:17:25.690000
Last modified
2026-10-19 10:17:19.927000
View original CVE JSON
{
  "id": "CVE-2026-93283",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
  "published": "2026-09-24T16:17:25.690",
  "lastModified": "2026-10-19T10:17:19.927",
  "vulnStatus": "Received",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ni3c: master: Fix device_register() error path\n\nWhen device_register() fails in i3c_master_register_new_i3c_devs(),\nput_device() is called to drop the reference taken by\ndevice_register().  That drops the last reference, so the device's\nrelease callback i3c_device_release() runs and frees the i3c_device.\n\nTwo problems follow from that:\n\ni3c_device_release() does WARN_ON(i3cdev->desc), so it warns because\ndesc->dev->desc still points back at the descriptor.  Clear it before\ncalling put_device().\n\nAfter put_device() frees the i3c_device, desc->dev is left pointing at\nfreed memory, so clear desc->dev as well.  That prevents, for example,\ni3c_master_unregister_i3c_devs() seeing desc->dev as non-NULL and\ndereferencing it."
    }
  ],
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "unaffected",
          "programFiles": [
            "drivers/i3c/master.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "1832ed55df45f4145335ad992fb83813cdc58b5d",
              "lessThan": "5bf498623f8397d45f85f14cd631c5e5a565c2fb",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "d48fe8d98171e0fffdeaa8b37ce0a6444bff819b",
              "lessThan": "20a2b6df91fd782ef2ff551febef594d0b46a9a7",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "174ae0a3b89e7804e4ea3d31bd83d6e43f39568c",
              "lessThan": "a14dbdf471001dd0601b0c491184990c178a199c",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "e49a51a96b531f1b4bcd8d358e645b6c74ef67e6",
              "lessThan": "d22ad96f1a0c89e0ba66a2facc7430f0923919e3",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "cab63f64887616e3c4e31cfd8103320be6ebc8d3",
              "lessThan": "7f8e2c4f3704d9774bb26b49b1ad6a60ae57d4a0",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "cab63f64887616e3c4e31cfd8103320be6ebc8d3",
              "lessThan": "7ef12e1dd06e442eebf370f6e53c41bd056d0f22",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "cab63f64887616e3c4e31cfd8103320be6ebc8d3",
              "lessThan": "6ecf17bf5fe8da51a6e3fc9e03a76898fcc5c6cf",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "cab63f64887616e3c4e31cfd8103320be6ebc8d3",
              "lessThan": "74be657d98a8d684c0475f3cbd450ef2a30ffc73",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "204beeb509d37669de34560e83bb8abffe7ee63a",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "b24cf43d9babf1265a2bb0ae8d198267cef43b83",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "5.10.201",
              "lessThan": "5.10.270",
              "versionType": "semver",
              "status": "affected"
            },
            {
              "version": "5.15.139",
              "lessThan": "5.15.221",
              "versionType": "semver",
              "status": "affected"
            },
            {
              "version": "6.1.63",
              "lessThan": "6.1.188",
              "versionType": "semver",
              "status": "affected"
            },
            {
              "version": "6.6.2",
              "lessThan": "6.6.157",
              "versionType": "semver",
              "status": "affected"
            },
            {
              "version": "5.4.261",
              "lessThan": "5.5",
              "versionType": "semver",
              "status": "affected"
            },
            {
              "version": "6.5.12",
              "lessThan": "6.6",
              "versionType": "semver",
              "status": "affected"
            }
          ]
        },
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "affected",
          "programFiles": [
            "drivers/i3c/master.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "6.7",
              "status": "affected"
            },
            {
              "version": "0",
              "lessThan": "6.7",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.10.270",
              "lessThanOrEqual": "5.10.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.15.221",
              "lessThanOrEqual": "5.15.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.1.188",
              "lessThanOrEqual": "6.1.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.6.157",
              "lessThanOrEqual": "6.6.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.12.110",
              "lessThanOrEqual": "6.12.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.18.52",
              "lessThanOrEqual": "6.18.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.2.6",
              "lessThanOrEqual": "7.2.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.3",
              "lessThanOrEqual": "*",
              "versionType": "original_commit_for_fix",
              "status": "unaffected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {},
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/20a2b6df91fd782ef2ff551febef594d0b46a9a7",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/5bf498623f8397d45f85f14cd631c5e5a565c2fb",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/6ecf17bf5fe8da51a6e3fc9e03a76898fcc5c6cf",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/74be657d98a8d684c0475f3cbd450ef2a30ffc73",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/7ef12e1dd06e442eebf370f6e53c41bd056d0f22",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/7f8e2c4f3704d9774bb26b49b1ad6a60ae57d4a0",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/a14dbdf471001dd0601b0c491184990c178a199c",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/d22ad96f1a0c89e0ba66a2facc7430f0923919e3",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ]
}