All Virtuozzo development lists (kernel + QEMU)
 help / color / mirror / Atom feed
From: Konstantin Khorenko <khorenko@virtuozzo.com>
To: Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
Cc: devel@openvz.org
Subject: Re: [Devel] [PATCH hci-8.1 0/2] vfio: prevent kvm reference leak on qemu-update
Date: Wed, 04 Nov 2026 21:08:34 +0100	[thread overview]
Message-ID: <179382291493.2764784.410820796002692056.b4-review@b4> (raw)
In-Reply-To: <20261030144933.944360-1-andrey.drobyshev@virtuozzo.com>

I won't apply this version, please send v2 with the changes below.

On Fri, 30 Oct 2026 16:49:31 +0200, Andrey Drobyshev wrote:
> Andrey Drobyshev (2):
>   vfio: move an open device's kvm reference when its group gets a new
>     kvm
>   KVM: remove the VM's debugfs directory when its fd is released

What to change for v2:

1. Patch 1, code and commit message: do not change device->kvm under a
   driver that still uses it after open_device(). In tree that is
   KVMGT: it registers its page-track notifier on device->kvm at open
   and unregisters it from device->kvm at close. Check what the NVIDIA
   vGPU driver does with vdev->kvm after open and say in the message
   which driver the change was tested with.

2. Patch 1, code comment and commit message: give the real reason to
   skip NULL, the lock order (details in the patch reply), and drop
   "the new kvm, if any, arrives on its own". Update the kernel-doc of
   vfio_file_set_kvm() too.

3. Patch 1, commit message: add a Fixes tag for 2b48f52f2bff ("vfio:
   fix deadlock between group lock and kvm lock").

4. Patch 2, code: at fd release remove only the directory. Keep freeing
   debugfs_stat_data in kvm_destroy_vm(), moved out from under the
   IS_ERR(kvm->debugfs_dentry) early return. This version has a
   use-after-free.

5. Patch 2, commit message: say that the destroy uevent no longer
   carries STATS_PATH, and that the stats go away for a VM that keeps
   running on its vcpu fds after the VM fd is closed.

6. Both patches: single space after a period, in the messages and in
   the new code comments, and add the Feature: line.

7. Cover letter: write one. Say what goes wrong on a live update of a
   vGPU VM, what each patch does, and how it was tested. In the subject
   "qemu-update" becomes "live update", and "kvm reference leak" covers
   patch 1 only.

Separate, not needed for v2:

1. Patch 1 should go to mainline too, I created a task for that:
   https://virtuozzo.atlassian.net/browse/VSTOR-153437

Details on items 1-6 are in the replies to the patches.

-- 
Konstantin Khorenko,
Virtuozzo Linux Kernel Team

_______________________________________________
Devel mailing list
Devel@openvz.org
https://lists.openvz.org/mailman/listinfo/devel

      parent reply	other threads:[~2026-11-04 20:10 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-30 14:49 Andrey Drobyshev
2026-10-30 14:49 ` [Devel] [PATCH hci-8.1 1/2] vfio: move an open device's kvm reference when its group gets a new kvm Andrey Drobyshev
2026-11-04 20:08   ` Konstantin Khorenko
2026-10-30 14:49 ` [Devel] [PATCH hci-8.1 2/2] KVM: remove the VM's debugfs directory when its fd is released Andrey Drobyshev
2026-11-04 20:08   ` Konstantin Khorenko
2026-11-04 20:08 ` Konstantin Khorenko [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=179382291493.2764784.410820796002692056.b4-review@b4 \
    --to=khorenko@virtuozzo.com \
    --cc=andrey.drobyshev@virtuozzo.com \
    --cc=devel@openvz.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.