[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH RFC v4 19/20] intel_iommu: unmap existing pages
Re: [Qemu-devel] [PATCH RFC v4 19/20] intel_iommu: unmap existing pages before replay
Mon, 23 Jan 2017 09:57:23 +0800
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1
On 2017年01月22日 17:09, Peter Xu wrote:
On Sun, Jan 22, 2017 at 04:13:32PM +0800, Jason Wang wrote:
On 2017年01月20日 21:08, Peter Xu wrote:
Previous replay works for domain switch only if the original domain does
not have mapped pages. For example, if we switch domain from A to B, it
will only work if A has no existing mapping. If there is, then there's
problem - current replay didn't make sure the old mappings are cleared
before replaying the new one.
I'm not quite sure this is needed. I thought the only thing we need to do is
stop DMA of device during the moving? Or is there an example that will cause
I think this patch is essential.
- device D1 moved to domain A, domain A has no mapping
- map page P1 in domain A, so D1 will have a mapping of page P1
- create domain B with mapping P2
- move D1 from domain A to domain B
Here if we don't unmap existing pages in domain A (P1),
I thought driver should do this work instead of device, because only
driver knows whether or not iova is still needed?
switch, we'll have D1 with both P1/P2 mapped, while domain B actually
only has P2. That's unaligned mapping, and it should be wrong.
If you (or anyone) think this is a bug as well for patch 18, I can
just squash both 19/20 into patch 18.
[Qemu-devel] [PATCH RFC v4 17/20] intel_iommu: allow dynamic switch of IOMMU region, Peter Xu, 2017/01/20
[Qemu-devel] [PATCH RFC v4 19/20] intel_iommu: unmap existing pages before replay, Peter Xu, 2017/01/20
Re: [Qemu-devel] [PATCH RFC v4 19/20] intel_iommu: unmap existing pages before replay, Jason Wang, 2017/01/23
[Qemu-devel] [PATCH RFC v4 18/20] intel_iommu: enable vfio devices, Peter Xu, 2017/01/20