This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] Re: [PATCH 1 of 7] x86: add _PAGE_IOMAP pte flag for IO mapp

To: Avi Kivity <avi@xxxxxxxxxxxx>
Subject: [Xen-devel] Re: [PATCH 1 of 7] x86: add _PAGE_IOMAP pte flag for IO mappings
From: Jeremy Fitzhardinge <jeremy@xxxxxxxx>
Date: Tue, 09 Sep 2008 07:47:07 -0700
Cc: Ingo Molnar <mingo@xxxxxxx>, Xen Devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, Andi Kleen <andi@xxxxxxxxxxxxxx>, linux-kernel@xxxxxxxxxxxxxxx, "H. Peter Anvin" <hpa@xxxxxxxxx>
Delivery-date: Tue, 09 Sep 2008 07:48:21 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <48C67AE0.5060503@xxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <4d93ba619c716c45cca0.1220826073@localhost> <48C67AE0.5060503@xxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird (X11/20080723)
Avi Kivity wrote:
> Jeremy Fitzhardinge wrote:
>> Use one of the software-defined PTE bits to indicate that a mapping is
>> intended for an IO address.  On native hardware this is irrelevent,
>> since a physical address is a physical address.  But in a virtual
>> environment, physical addresses are also virtualized, so there needs
>> to be some way to distinguish between pseudo-physical addresses and
>> actual hardware addresses; _PAGE_IOMAP indicates this intent.
>> By default, __supported_pte_mask masks out _PAGE_IOMAP, so it doesn't
>> even appear in the final pagetable.
> Could PTE_SPECIAL, added for get_user_pages_really_fast(), be reused
> for this?

I'm not sure; I still don't really understand how _PAGE_SPECIAL gets
used, other than being user-mode mapping only.  But in principle,
_PAGE_IOMAP could be set on both kernel and user mappings (if you direct
map a device into a process address space), so I think they would
conflict then?

Also, _PAGE_SPECIAL is also shared with _PAGE_CPA_TEST, which is only
used on kernel mappings, so they can co-exist happily.

Is _PAGE_IOMAP at all useful for device passthrough in kvm?


Xen-devel mailing list