[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20181029024228.GA4279@simonLocalRHEL7.x64>
Date: Mon, 29 Oct 2018 10:42:28 +0800
From: Simon Guo <wei.guo.simon@...ux.alibaba.com>
To: Alex Williamson <alex.williamson@...hat.com>,
Eric Auger <eric.auger@...hat.com>
Cc: qixuan.wu@...ux.alibaba.com, linux-kernel@...r.kernel.org,
kvm@...r.kernel.org
Subject: Can VFIO pin only a specific region of guest mem when use pass
through devices?
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
Powered by blists - more mailing lists