一线运维实战手记 · 云计算 · 数据库 · 故障排查
2026年9月5日

CVE-2026-80894 – In the Linux kernel, the following vulnerability has been resolved: iommufd: Fix wrong hw

未分类
📑 文章目录

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

iommufd: Fix wrong hwpt passed to iommufd_auto_response_faults on replace

iommufd_hwpt_replace_device() calls:

iommufd_auto_response_faults(hwpt, old_handle);

passing the *new* hwpt together with the handle of
the device’s *old* domain. This should be a parameter mismatch:

1. Semantically, iommufd_auto_response_faults(x, handle) scans
x->fault’s deliver list and response xarray for groups matching
“handle”. A group is queued under the hwpt that was attached at
fault-delivery time. old_handle is fetched *before* the domain switch,
so its group lives on old->fault, not on the new hwpt->fault.

2. Historically, the first argument was “old”. The routine was
introduced by commit b7d8833677ba (“iommufd: Fault-capable hwpt
attach/detach/replace”) as __fault_domain_replace_dev() in
fault.c, correctly calling iommufd_auto_response_faults(old, curr).
Commit fb21b1568ada (“iommufd: Make attach_handle generic than
fault specific”) moved this into iommufd_hwpt_replace_device() in
device.c and swapped it to “hwpt”. This should be a refactor regression,
not an intentional change.

Fix this by passing “old” instead.