On Wed, Apr 11, 2018 at 04:25:56PM +0800, Tiwei Bie wrote: > Hi Peter, > > On Wed, Apr 11, 2018 at 04:00:36PM +0800, Peter Xu wrote: > > On Wed, Apr 11, 2018 at 03:20:27PM +0800, Tiwei Bie wrote: > > > > [...] > > > > > This is just a RFC for now. It seems that, it doesn't work > > > as expected when guest is using kernel driver (To handle > > > this case, it seems that some RAM regions' events also need > > > to be listened). Any comments would be appreciated! Thanks! > > > > Hi, Tiwei, > > > > What's your kernel command line in the guest? Is iommu=pt there? > > Yeah, you are right! The related things in kernel command line are: > > iommu=pt intel_iommu=on > > Hmm, how will this param affect vIOMMU's behaviour?..
If iommu=pt is there, guest kernel will try to bypass IOMMU, the IOMMU regions will be disabled completely in that case, hence it's very possible that your IOMMU memory listeners won't get anything useful. Maybe you can consider removing iommu=pt in the guest parameter to see whether the guest kernel driver could work. -- Peter Xu