Database/Kernel, userspace & hypervisor

KVM x86: __get_sregs2() reads PDPTRs without SRCU protection, dereferencing memslots unsafely
Impact
Reading PDPTR registers through the KVM_GET_SREGS2 ioctl can reach guest memory via load_pdptrs() and kvm_vcpu_gfn_to_memslot(), which requires kvm->srcu or slots_lock to be held; only vcpu->mutex was held, so the memslot pointer was dereferenced outside any read-side critical section. What is published is a lockdep splat found by syzkaller, not a demonstrated use-after-free - the practical risk is an unprotected memslot dereference racing a memslot update, which is a correctness and potential host-stability problem on a hypervisor node. For GPU clouds that rent VMs with passthrough GPUs this lives in the host hypervisor, where the attacker is a tenant that owns a VM, and a host crash takes every VM on that node with it. Do not read the 7.8 local score as a proven escape; the record supports an unsafe dereference, nothing more.
Who can reach it
Local, on the hypervisor host: any process holding an open KVM vCPU file descriptor (/dev/kvm), i.e. the VMM process for a tenant VM, calling the KVM_GET_SREGS2 ioctl. Not reachable from inside the guest directly and not reachable over the network.
What to do
Pick up the stable kernel with the added SRCU read-side protection (five branches carry it) and reboot the hypervisor; live-migrate or drain guests first, since KVM is built into the running kernel. No hot fix or runtime toggle exists. If you do not run KVM guests on GPU nodes, this is not actionable for you.
References
Related entries
- Linux kernel vhost-vdpa: ASID equal to ngroups passes validation, giving an out-of-bounds write in vdpa_simCVE-2026-43248 · Linux kernel vhost-vdpa / vdpa_sim (ASID group bound check)High
- Linux kernel mm: stale page->private survives page free and causes a use-after-free in the swap subsystemCVE-2026-43303 · Linux kernel mm/page_alloc (page->private not cleared in free_pages_prepare)High
- Linux kernel BPF verifier: register used by an indirect jump is not marked liveCVE-2026-43321 · Linux kernel BPF verifier (compute_insn_live_regs, gotox indirect jumps)High
- Linux kernel io_uring: legacy buffer recycle does not re-check that the buffer list still exists or is legacyCVE-2026-43366 · Linux kernel io_uring provided buffers (kbuf legacy recycle path)High
- Linux kernel (net/rds): When pinning user pages for a zerocopy RDS send fails, the pages are released but theCVE-2026-43494 · Linux kernel (net/rds)High
- Linux kernel (net/rds): A zerocopy RDS send that fails after pinning user pages but before the message reaches theCVE-2026-43502 · Linux kernel (net/rds)High
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.