> -----Original Message----- > From: Eric Auger [mailto:[email protected]] > Sent: 26 April 2022 12:45 > To: Shameerali Kolothum Thodi <[email protected]>; Yi > Liu <[email protected]>; [email protected]; [email protected]; > [email protected] > Cc: [email protected]; [email protected]; [email protected]; > [email protected]; [email protected]; [email protected]; > [email protected]; [email protected]; [email protected]; > [email protected]; [email protected]; [email protected]; > [email protected]; [email protected]; [email protected]; > [email protected]; Zhangfei Gao <[email protected]> > Subject: Re: [RFC 00/18] vfio: Adopt iommufd
[...] > >> > https://lore.kernel.org/kvm/[email protected] > >> / > >> [2] https://github.com/luxis1999/iommufd/tree/iommufd-v5.17-rc6 > >> [3] https://github.com/luxis1999/qemu/tree/qemu-for-5.17-rc6-vm-rfcv1 > > Hi, > > > > I had a go with the above branches on our ARM64 platform trying to > pass-through > > a VF dev, but Qemu reports an error as below, > > > > [ 0.444728] hisi_sec2 0000:00:01.0: enabling device (0000 -> 0002) > > qemu-system-aarch64-iommufd: IOMMU_IOAS_MAP failed: Bad address > > qemu-system-aarch64-iommufd: vfio_container_dma_map(0xaaaafeb40ce0, > 0x8000000000, 0x10000, 0xffffb40ef000) = -14 (Bad address) > > > > I think this happens for the dev BAR addr range. I haven't debugged the > kernel > > yet to see where it actually reports that. > Does it prevent your assigned device from working? I have such errors > too but this is a known issue. This is due to the fact P2P DMA is not > supported yet. > Yes, the basic tests all good so far. I am still not very clear how it works if the map() fails though. It looks like it fails in, iommufd_ioas_map() iopt_map_user_pages() iopt_map_pages() .. pfn_reader_pin_pages() So does it mean it just works because the page is resident()? Thanks, Shameer
