Database/Kernel, userspace & hypervisor
Linux kernel idxd: double free of wq, engine and group structs on setup error and cleanup paths
Impact
The release callbacks for idxd wq, engine and group devices already kfree() the enclosing struct, while the setup error paths and cleanup functions called kfree() again after put_device() dropped the last reference. For work queues the wq release callback also owns opcap_bmap and wqcfg, which the error unwind freed separately, so those are double-freed too. Any probe failure or driver teardown on an Intel DSA/IAA device therefore corrupts the kernel heap instead of failing cleanly. DSA is on-die on current Xeon hosts, including GPU-server head nodes where it is bound for memory-copy offload, but the path is only entered on driver initialisation failure or module removal - not by tenant workloads.
Who can reach it
Local and privileged: requires the ability to unbind or remove the idxd driver, or a device that fails probe at boot. Not reachable from an unprivileged process or a container.
What to do
Install a stable kernel with the redundant kfree() calls removed and reboot the node - the fix is compiled into the driver, so reloading idxd on an unpatched kernel does not help. On unpatched hosts, avoid rmmod/unbind of idxd.
References
Related entries
- Linux kernel KVM arm64 vGIC: double-deactivate of nested IRQs trips an AmpereOne erratumCVE-2026-80699 · Linux kernel KVM/arm64 vGIC (nested-context IRQ deactivation)Unscored
- Microsoft Hyper-V: vmswitch fails to validate guest OID requestsCVE-2021-28476 · Microsoft Hyper-VCritical
- Incus: instance snapshots bypass restricted.containers.lowlevel, giving command execution on the hostCVE-2026-48751 · Incus (instance snapshots ignore restricted.containers.lowlevel)Critical
- VMware ESXi (OpenSLP): Use-after-free in OpenSLP on port 427 - unauthenticated remote code execution on the hypervisorCVE-2020-3992 · VMware ESXi (OpenSLP)Critical
- Linux kernel mlx5_core kTLS RX offload: TLS RX resync list corruption: entries are moved by the resync handlerCVE-2021-47215 · Linux kernel mlx5_core kTLS RX offloadCritical
- Linux kernel (drivers/nvme/host): The NVMe/RDMA initiator destroys the queue pair before the connection manager ID, soCVE-2021-47378 · Linux kernel (drivers/nvme/host)Critical
This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.