Re: [PATCH] x86: define arch_vm_get_page_prot to set _PAGE_IOMAPon VM_IO vmas

From: H. Peter Anvin
Date: Thu Oct 21 2010 - 20:45:58 EST


On 10/21/2010 04:17 PM, Jeremy Fitzhardinge wrote:
>
> Xen PV guests are always responsible for constructing ptes with machine
> addresses in them (ie, doing their own pseudo-physical to machine
> address conversion), and Xen verifies that the pages they want to map
> either belong to them or have been granted to them. The _PAGE_IOMAP
> flag is a kernel-internal one which allows us to distinguish between
> ptes intended to map memory vs machine hardware addresses; it is not
> part of the Xen ABI.
>
> If you're passing a device through to a domain, the domain is given
> access to the device's address space so it can legally map those pages
> (and if an IOMMU is available, the device is constrained to only DMA
> that domain's memory).
>

Okay, could you clarify this part a bit? Why does the kernel need to
know the difference between "pseudo-physical" and "machine addresses" at
all? If they overlap, there is a problem, and if they don't overlap, it
will be a 1:1 mapping anyway...

-hpa

--
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel. I don't speak on their behalf.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/