CVE-2026-97946: x86/amd_node: Fix PCI device reference counting in amd_smn_init()
In the Linux kernel, the following vulnerability has been resolved:
x86/amdnode: Fix PCI device reference counting in amdsmninit()
The local "root" pointer is a temporary variable used during the device search. Therefore, refcount related to the search iterators should be cleaned up after the search is complete.
Use the free() cleanup macro to ensure the refcount is decremented when the temporary pointer goes out of scope.
Additionally, increment the refcount when caching a root pointer. This ensures the in-use refcount is separate from the temporary search refcounting.
Finally, drop the redundant "root = NULL" before the second search loop. The pcigetclass() iterator always decrements the refcount of its "from" argument, so the first loop can only fall through with "root" already NULL.
Affected Software
Event History
Frequently Asked Questions
What systems are affected by this issue?
The affected software is the Linux kernel. The issue is in the x86 AMD node code path, specifically amd_smn_init(), and concerns PCI device reference counting.
What is the immediate mitigation if an update cannot be applied?
The provided information does not identify a configuration workaround or operational mitigation. Apply a Linux kernel version containing one of the referenced stable fixes when available.
How can I determine whether my kernel includes the fix?
Check whether your kernel source or vendor update includes the amd_smn_init() PCI reference-counting changes from the referenced stable commits. The data provided does not include affected or fixed kernel version numbers.