Baolu: The reproduction depends on devices. HW passthrough PCIe devices with default identity map could have the issue. Make sure that messages like following came out in dmesg and their mapping does not change after booting: [ 10.167809] DMAR: Hardware identity mapping for device 0000:30:00.0 [ 10.167823] DMAR: Hardware identity mapping for device 0000:30:00.1
Devices which make following true could also be used for the experiment: > static int iommu_should_identity_map(struct device *dev, int startup) > { > if ((iommu_identity_mapping & IDENTMAP_AZALIA) && IS_AZALIA(pdev)) > return 1; > if ((iommu_identity_mapping & IDENTMAP_GFX) && IS_GFX_DEVICE(pdev)) > return 1; Once they are up, remove them first by following command: echo 1 > /sys/bus/pci/devices/0000\:03\:00.1/remove Then trigger the hotplug device rescanning: echo 1 > /sys/bus/pci/rescan To provide an example of specific devices on the market, I need to try out. Or, if it is fine with you, forcing a PCIe NIC card to be default hardware passthrough by changing the intel-iommu.c is another easy way to reproduce this issue. Best Regards, James