Hi, Thanks for the work! On Thu, Apr 14, 2022 at 03:46:52AM -0700, Yi Liu wrote: > - More tests I did a quick test on my ARM64 platform, using "iommu=smmuv3" string. The behaviors are different between using default and using legacy "iommufd=off". The legacy pathway exits the VM with: vfio 0002:01:00.0: failed to setup container for group 1: memory listener initialization failed: Region smmuv3-iommu-memory-region-16-0: device 00.02.0 requires iommu MAP notifier which is not currently supported while the iommufd pathway started the VM but reported errors from host kernel about address translation failures, probably because of accessing unmapped addresses. I found iommufd pathway also calls error_propagate_prepend() to add to errp for not supporting IOMMU_NOTIFIER_MAP, but it doesn't get a chance to print errp out. Perhaps there should be a final error check somewhere to exit? Nic