On Thu, Jan 05, 2023 at 03:09:30PM -0700, Alex Williamson wrote: > On Thu, 19 May 2022 14:33:11 -0400 > Matthew Rosato <mjrosato@xxxxxxxxxxxxx> wrote: > > > Rather than relying on a notifier for associating the KVM with > > the group, let's assume that the association has already been > > made prior to device_open. The first time a device is opened > > associate the group KVM with the device. > > > > This fixes a user-triggerable oops in GVT. > > It seems this has traded an oops for a deadlock, which still exists > today in both GVT-g and vfio-ap. These are the only vfio drivers that > care about kvm, so they make use of kvm_{get,put}_kvm(), where the > latter is called by their .close_device() callbacks. Bleck It is pretty common to run the final part of 'put' from a workqueue specifically to avoid stuff like this, eg fput does it Maybe that is the simplest? Jason