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


RE: [Xen-devel] [PATCH] Optimizing x86-64 xenlinux using global pages fo

To: "Keir Fraser" <Keir.Fraser@xxxxxxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: RE: [Xen-devel] [PATCH] Optimizing x86-64 xenlinux using global pages for user mode (take 2)
From: "Nakajima, Jun" <jun.nakajima@xxxxxxxxx>
Date: Fri, 1 Sep 2006 10:56:12 -0700
Delivery-date: Fri, 01 Sep 2006 10:56:40 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
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/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcbL/5UqcHfKdRZfQTa9q9O4P2Kz2gAejrc/AF1mXXA=
Thread-topic: [Xen-devel] [PATCH] Optimizing x86-64 xenlinux using global pages for user mode (take 2)
Keir Fraser wrote:
> On 30/8/06 7:43 am, "Nakajima, Jun" <jun.nakajima@xxxxxxxxx> wrote:
>> The previous patch had a problem with the builder, which constructs
>> the initial page tables with the USER bit on. And Xen couldn't
>> distinguish kernel or use pages. It was partially checked avoiding
>> the bug, and it's finished with this patch.
> I'd like to avoid awareness of the extra PAGE_GUEST_KERNEL bit in
> guests and tools as much as possible (in fact, entirely would be
> good). 

The updated patch avoids that.

> There's no need for all the PAGE_KERNEL macros in Linux to include
> the new flag. The absence of PAGE_USER will suffice to allow Xen to
> distinguish kernel entries from user entries. All that is necessary
> is for Xen to add the flag when it adds PAGE_USER to a kernel entry,
> so that kernel entries remain disambiguated from user entries.
> Also, you should use one of the high-order available bits (one of bits
> 52-60). Other OSes use the low-order available bits for their own
> purposes -- we may as well avoid conflicting with them.

I used the bit 52 this time, but it's still possible to see such

>  -- Keir

 arch/x86/domain_build.c       |    2 +-
 arch/x86/flushtlb.c           |    7 +++++++
 arch/x86/mm.c                 |   29 +++++++++++++++++++++++++----
 arch/x86/x86_64/traps.c       |    2 +-
 include/asm-x86/flushtlb.h    |    8 +++++++-
 include/asm-x86/x86_64/page.h |    7 +++++--
 6 files changed, 46 insertions(+), 9 deletions(-)

Signed-off-by: Jun Nakajima <jun.nakajima@xxxxxxxxx>

Intel Open Source Technology Center

Attachment: global_64_3.patch
Description: global_64_3.patch

Xen-devel mailing list
<Prev in Thread] Current Thread [Next in Thread>
  • RE: [Xen-devel] [PATCH] Optimizing x86-64 xenlinux using global pages for user mode (take 2), Nakajima, Jun <=