On 5/16/22 2:35 PM, Jason Gunthorpe wrote:
On Mon, May 16, 2022 at 02:30:46PM -0400, Matthew Rosato wrote:
Conceptually I think this would work for QEMU anyway (it always sets the kvm
before we open the device). I tried to test the idea quickly but couldn't
get the following to apply on vfio-next or your vfio_group_locking -- but I
understand what you're trying to do so I'll re-work and try it out.
I created it on 8c9350e9bf43de1ebab3cc8a80703671e6495ab4 which is the
vfio_group_locking.. I can send you a github if it helps
https://github.com/jgunthorpe/linux/commits/vfio_group_lockin
Thanks -- I was able to successfully test your proposed idea (+ some
changes to make it compile :)) on top of vfio_group_locking along with a
modified version of my zdev series. I also tried it out with vfio-ap
successfully, but have nothing to test GVT with.
That said, this has caused me to realize that 'iommu:
iommu_group_claim_dma_owner() must always assign a domain' breaks s390x
vfio-pci :( I wonder if it is due to the way s390x PCI currently
switches between dma ops and iommu ops. It looks like it breaks vfio-ap
mdevs too, but I know less about that -- I will have to investigate
both more tomorrow.