PT-2026-104939 · Azure Linux · Kernel

Published

2026-09-24

·

Updated

2026-09-24

None

No severity ratings or metrics are available. When they are, we'll update the corresponding info on the page.
In the Linux kernel, the following vulnerability has been resolved:
ACPI: bus: Introduce acpi bus get primary device()
The function used for obtaining the first "physical" device for which the given ACPI one is the ACPI companion, acpi get first physical node(), may return a stale device pointer (mostly in theory) because acpi unbind one() may run as a whole after dropping the ACPI device's physical node lock in acpi get first physical node() and before it returns. The last reference to the "physical" device may be dropped then before the pointer to it is returned to the caller.
If that happens and the acpi get first physical node() caller invokes get device() on the pointer obtained from it, which is done by the majority of its callers, a use-after-free will occur.
To prepare for addressing this problem, introduce a new function for getting the first "physical" device associated with the given ACPI one (the "primary physical device") that will also reference count the device in question before returning a pointer to it.
Make that new function and acpi get first physical node() share the physical node list lookup code.
No intentional functional impact.
Found an issue in the description? Have something to add? Feel free to write us 👾

Related Identifiers

AZL-103826

Affected Products

Kernel