On Tue, Nov 29, 2022 at 04:10:34PM +0800, Jason Wang wrote: > Hi All: > > According to ATS, device should work if ATS is disabled. This is not > correctly implemented in the current intel-iommu since it doesn't > handle the UNMAP notifier correctly. This breaks the vhost-net + > vIOMMU without dt. > > The root casue is that the when there's a device IOTLB miss (note that > it's not specific to PCI so it can work without ATS), Qemu doesn't > build the IOVA tree, so when guest start an IOTLB invalidation, Qemu > won't trigger the UNMAP notifier. > > Fixing by build IOVA tree during IOMMU translsation. > > Thanks
IIUC you were going to post v2? At least commit log fixes. > Jason Wang (3): > intel-iommu: fail MAP notifier without caching mode > intel-iommu: fail DEVIOTLB_UNMAP without dt mode > intel-iommu: build iova tree during IOMMU translation > > hw/i386/intel_iommu.c | 58 ++++++++++++++++++++++++------------------- > 1 file changed, 33 insertions(+), 25 deletions(-) > > -- > 2.25.1