Re: [PATCH 4/4][VTD] vt-d specific files in KVM

Muli Ben-Yehuda
2008-06-10T16:08:03Z

On Tue, Jun 10, 2008 at 10:24:06AM -0500, Anthony Liguori wrote:

> If you add the MMIO page to the IOMMU table, then the behavior is
> going to be identical to what occurs on bare metal which IMHO is a
> good thing. Why jump through hoops to change what may or may not be
> an error condition instead of letting the natural error behavior
> happen? There may be some weird piece of hardware that relies on
> this behavior out there.

One potential outcome of this behaviour on bare metal---which has been
observed!---is a machine check. Letting the guest machine check the
host is not a good thing.

> There is no such thing as an MMIO slot. All you would need to do is
> mmap(phys_ram_base + GPA, "/sys/bus/pci/.../region/0", MAP_SHARED |
> MAP_FIXED) and you'd have a mixed slot assuming GPA was within an
> existing RAM slot.

That doesn't happen with the current code base, but color me
convinced: we'll just continue checking gfns one by one when mapping
them into the IOMMU page tables, skipping any non-ram gfns.

Cheers,
Muli