Backport iommu refactor and bug-fixes from intel-github.
merged: https://gitee.com/anolis/cloud-kernel/pulls/660