[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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


  • To: Jeremy Fitzhardinge <jeremy@xxxxxxxx>
  • From: Nick Piggin <nickpiggin@xxxxxxxxxxxx>
  • Date: Thu, 11 Sep 2008 02:55:03 +1000
  • Cc: Xen Devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, linux-kernel@xxxxxxxxxxxxxxx, Avi Kivity <avi@xxxxxxxxxxxx>, Andi Kleen <andi@xxxxxxxxxxxxxx>, "H. Peter Anvin" <hpa@xxxxxxxxx>, Ingo Molnar <mingo@xxxxxxx>
  • Delivery-date: Wed, 10 Sep 2008 09:55:46 -0700
  • Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com.au; h=Received:X-YMail-OSG:X-Yahoo-Newman-Property:From:To:Subject:Date:User-Agent:Cc:References:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding:Content-Disposition:Message-Id; b=6uxxVdzwAQkeKs/KK4DN4cZlZkok9fenVpBNa5rEChM/ZJnDMJkbSsjqs1sB2ICyW2u1cUX2S+LWEyLqfIt3yn8EdVozc0LMG+KQwesjrvdqsHnSwe9hlmm4lBVLf2R/MCB/Pmc+H2IuEvyQpUCftUW0r0nTOK66FdkTWbJQSyw= ;
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

On Thursday 11 September 2008 02:38, Jeremy Fitzhardinge wrote:
> Avi Kivity wrote:
> > Actually it's more of a "no struct page" flag, which implies no
> > refcounting.
>
> Hm, is that actually true enough to define it?  Could we rename it
> something like _PAGE_NOSTRUCTPAGE or something a bit more specific than
> "special"?

It complements vm_normal_page, which was there first (and coined by
Linus). It is the opposite of normal. This question always comes up
and my answer is always yes, if you can convince Linus to rename
vm_normal_page to the corresponding term :)

It's not exactly _PAGE_NOSTRUCTPAGE. There can be struct pages under
there, but you're not to touch them.


> >   And not having a struct page should correspond well to a pte not
> > requiring pfn->mfn conversion and being an I/O page.
>
> But _PAGE_SPECIAL is only set in a few places.  It's not set in ioremap
> mappings and so on.  Should it be?

Kernel address space, you mean? No, it is only ever used on user
addresses.


> There's also the hiccup that it gets set in a pte with pte_mkspecial() -
> but at that point its too late because you've already constructed the
> pte and done the pfn->mfn conversion.  _PAGE_IOMAP can only be set when
> you initially construct the pte out of a frame number and a pgprot.

I don't see this would be any problem because the pte is always constructed
in a single line in both places where it is used.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.