CVE-2026-93084

firmware: arm_scmi: Drop handle on protocol bind failures

State
Published
Severity
Not scored
Published
Sep 17, 2026
Updated
Oct 30, 2026
Reserved
Sep 17, 2026

Read the record on cve.org

Description

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

firmware: arm_scmi: Drop handle on protocol bind failures

The SCMI bus notifier acquires an SCMI handle when the driver core emits BUS_NOTIFY_BIND_DRIVER, before invoking the protocol driver probe callback. The protocol probe path only checks whether sdev->handle is set.

If device_link_add() fails after the handle has been acquired, the protocol device can still bind with a valid handle but without the dependency link to the SCMI parent. A concurrent parent unbind can then miss the child and tear down the SCMI instance while the child still holds a handle into it.

If the protocol driver probe later fails, for example with -EPROBE_DEFER, the driver core emits BUS_NOTIFY_DRIVER_NOT_BOUND rather than BUS_NOTIFY_UNBOUND_DRIVER. The SCMI notifier only released the handle on BUS_NOTIFY_UNBOUND_DRIVER, so each failed protocol-device bind leaked the SCMI instance users refcount and left sdev->handle set after the failed probe.

Make the link helper report failure and drop the acquired handle if the link cannot be created. Also handle BUS_NOTIFY_DRIVER_NOT_BOUND in the same cleanup path used for unbind so failed probes balance the earlier BUS_NOTIFY_BIND_DRIVER acquisition.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • b50c9270304cfed6ee1c4ce5036102ad7b762051 to before b5377e690cd4fe87ee52fcf067c9929414ea8f4eAffected
  • 971fc0665f1361f23251e4d85fac4aed1b683505 to before 0f860db24ee95e5da4866303a35e55098b9641b3Affected
  • 971fc0665f1361f23251e4d85fac4aed1b683505 to before df273eced7cec550465fd1bb82a5d2c3c7d3c437Affected
  • 971fc0665f1361f23251e4d85fac4aed1b683505 to before a54dc23e8bd2246c28eafffa60b4634f0d1a11ccAffected
  • 971fc0665f1361f23251e4d85fac4aed1b683505 to before 77d2985d1e80e67f32026fc03e975c4c83cc543dAffected
  • 971fc0665f1361f23251e4d85fac4aed1b683505 to before e3a5c30d233ca5d3e799a80da806554c703bda13Affected
LinuxLinux
  • 6.3Affected
  • before 6.3Not affected
  • 6.6.157 through 6.6.*Not affected
  • 6.12.110 through 6.12.*Not affected
  • 6.18.52 through 6.18.*Not affected
  • 7.2.6 through 7.2.*Not affected
  • 7.3 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.