Messages in this thread | | | Subject | Re: Can VFIO pin only a specific region of guest mem when use pass through devices? | From | Jason Wang <> | Date | Mon, 29 Oct 2018 17:14:46 +0800 |
| |
On 2018/10/29 上午10:42, Simon Guo wrote: > Hi, > > I am using network device pass through mode with qemu x86(-device vfio-pci,host=0000:xx:yy.z) > and “intel_iommu=on” in host kernel command line, and it shows the whole guest memory > were pinned(vfio_pin_pages()), viewed by the “top” RES memory output. I understand it is due > to device can DMA to any guest memory address and it cannot be swapped. > > However can we just pin a rang of address space allowed by iommu group of that device, > instead of pin whole address space? I do notice some code like vtd_host_dma_iommu(). > Maybe there is already some way to enable that? > > Sorry if I missed some basics. I googled some but no luck to find the answer yet. Please > let me know if any discussion already raised on that. > > Any other suggestion will also be appreciated. For example, can we modify the guest network > card driver to allocate only from a specific memory region(zone), and qemu advises guest > kernel to only pin that memory region(zone) accordingly? > > Thanks, > - Simon
One possible method is to enable IOMMU of VM.
Peter (cced) may know more.
Thanks
| |