WARNING - OLD ARCHIVES

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/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] Support XENFEAT_supervisor_mode_kernel in x86/64 HYPERVI

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] Support XENFEAT_supervisor_mode_kernel in x86/64 HYPERVISOR_IRET macro
From: Xen patchbot -unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Mon, 27 Feb 2006 12:50:08 +0000
Delivery-date: Mon, 27 Feb 2006 12:50:33 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Ian.Campbell@xxxxxxxxxxxxx
# Node ID c823e60207f0c1f54f7d9a8456a33d32e1e48b89
# Parent  f1e5b29dd15a18182ee08c3bd37e3a765d65a33a
Support XENFEAT_supervisor_mode_kernel in x86/64 HYPERVISOR_IRET macro

Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxxxxx>

diff -r f1e5b29dd15a -r c823e60207f0 
linux-2.6-xen-sparse/arch/x86_64/kernel/entry-xen.S
--- a/linux-2.6-xen-sparse/arch/x86_64/kernel/entry-xen.S       Mon Feb 27 
10:55:13 2006
+++ b/linux-2.6-xen-sparse/arch/x86_64/kernel/entry-xen.S       Mon Feb 27 
10:58:17 2006
@@ -51,6 +51,7 @@
 #include <asm/page.h>
 #include <asm/errno.h>
 #include <xen/interface/arch-x86_64.h>
+#include <xen/interface/features.h>
 
 #include "irq_vectors.h"
 
@@ -146,16 +147,19 @@
          */
        .macro HYPERVISOR_IRET flag
        testb $3,1*8(%rsp)
-       jnz   1f
+       jnz   2f
        testl $NMI_MASK,2*8(%rsp)
+       jnz   2f
+
+       testb $1,(xen_features+XENFEAT_supervisor_mode_kernel)
        jnz   1f
 
        /* Direct iret to kernel space. Correct CS and SS. */
        orb   $3,1*8(%rsp)
        orb   $3,4*8(%rsp)
-       iretq
-
-1:     /* Slow iret via hypervisor. */
+1:     iretq
+
+2:     /* Slow iret via hypervisor. */
        andl  $~NMI_MASK, 16(%rsp)
        pushq $\flag
        jmp  hypercall_page + (__HYPERVISOR_iret * 32)

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] Support XENFEAT_supervisor_mode_kernel in x86/64 HYPERVISOR_IRET macro, Xen patchbot -unstable <=