On Tue, Nov 01, 2022 at 11:04:38AM +0800, Yi Liu wrote: > On 2022/11/1 07:24, Jason Gunthorpe wrote: > > On Mon, Oct 31, 2022 at 08:25:39PM +0800, Yi Liu wrote: > > > > There is something wrong with the test suite that it isn't covering > > > > the above, I'm going to look into that today. > > > > > > sounds to be the cause. I didn't see any significant change in vfio_main.c > > > that may fail gvt. So should the iommufd changes. Then we will re-run the > > > test after your update.:-) > > > > I updated the github with all the changes made so far, it is worth > > trying again! > > gvt is still failing with below call trace in host side. vfio_unpin_pages() > is still in problem. Any idea on it? > [ 206.464318] WARNING: CPU: 9 PID: 3362 at > drivers/iommu/iommufd/device.c:591 iommufd_access_pin_pages+0x337/0x360 Judging from this WARNING, and since gvt (mdev) needs pin_pages(), I assume this might be a fix, though Jason's latest change for the iova_alignment seems to be added for CONFIG_IOMMUFD_TEST only. ------ diff --git a/drivers/vfio/iommufd.c b/drivers/vfio/iommufd.c index 72a289c5f8c9..185075528d5e 100644 --- a/drivers/vfio/iommufd.c +++ b/drivers/vfio/iommufd.c @@ -120,6 +120,7 @@ static void vfio_emulated_unmap(void *data, unsigned long iova, } static const struct iommufd_access_ops vfio_user_ops = { + .needs_pin_pages = 1, .unmap = vfio_emulated_unmap, }; ------ Perhaps you can try it first to see if we can test the rest part of the routine for now, till Jason acks tomorrow. Thanks Nic