Messages in this thread | | | Subject | Re: [PATCH 2/2] s390/vfio-ap: replace open coded locks for VFIO_GROUP_NOTIFY_SET_KVM notification | From | Tony Krowiak <> | Date | Fri, 30 Jul 2021 09:33:09 -0400 |
| |
On 7/28/21 3:42 PM, Halil Pasic wrote: > On Wed, 28 Jul 2021 09:43:03 -0400 > Tony Krowiak <akrowiak@linux.ibm.com> wrote: > >> This solution was suggested by Jason G and it does in fact resolve >> the lockdep splat encountered when starting an SE guest with >> access to crypto resources. There is a chance that the KVM lock >> can get held while waiting for the lock on the matrix_dev->mutex, >> but this does not seem like a grave concern to me. > Yes I agree. I was thinking along the lines: matrix modifications > via the sysfs take the matrix_dev->lock so the level of contention > may depend on what userspace is doing...
The probe/remove functions also take the matrix_dev->lock as does the handle_pqap() function. In any case, while all of those are possible, in our implementation of AP queue pass-through, the two functions that take the KVM lock are invoked when the guest is starting or shutting down, or when the mdev is hot plugged/unplugged. For the cases of guest startup/shutdown, it would seem that holding the kvm->lock while waiting for the matrix_dev->lock shouldn't be a big problem since the guest will either not be fully up yet or on its way down. I suppose the hot plug/unplug case could potentially cause the guest vcpus to pause while processing, but how often do you anticipate a hot plug to take place?
> > Regards, > Halil
| |