[Devel] [PATCH hci-8.1 1/2] vfio: take the kvm reference only for drivers that read device->kvm
Konstantin Khorenko
khorenko at virtuozzo.com
Thu Nov 5 15:54:22 MSK 2026
I won't apply this version, please send v3 with the changes below.
On Thu, 5 Nov 2026 14:17:32 +0200, Andrey Drobyshev wrote:
> Only three drivers read device->kvm after open_device(): KVMGT,
> vfio_ap and vfio-pci's zdev support. Let them say so with
> needs_kvm_ref, and take no reference for the others, which then can't
> keep a VM alive. Tested with nvidia-vgpu-vfio 595.71.03 on RTX 6000
> Ada SR-IOV VFs, a vfio-pci variant driver that doesn't read the
> pointer.
Item 1 of the cover letter reply: "after open_device()" becomes "in
open_device()", and say that device->kvm stays NULL without the flag.
Why: all three read the pointer in open_device(). vfio_ap reads it
only there and fails the open with -EINVAL when it is NULL. And
vfio_device_get_kvm_safe() returns before it sets device->kvm, so a
driver without the flag gets no pointer at all, not just no
reference. An out-of-tree driver that reads it now sees NULL.
Item 2 of the cover letter reply: say how you checked that
nvidia-vgpu-vfio does not read device->kvm.
Why: that driver is the one this change is for, and its source is not
in our tree. If it does read the pointer, it now gets NULL.
> + /*
> + * Set before registration by a driver that reads device->kvm after
> + * open_device(): the core then keeps the KVM the device was opened
> + * with referenced until close_device().
> + */
Item 1 of the cover letter reply: the same two fixes in this comment.
> Feature: fix ms/vfio
>
> Assisted-by: LLM
Item 5 of the cover letter reply: drop the Assisted-by line here, it
goes into the cover letter. Put a blank line before Feature:.
--
Konstantin Khorenko,
Virtuozzo Linux Kernel Team
More information about the Devel
mailing list