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

[Xen-changelog] [xen-unstable] LINUX: Fixes for XENFEAT_supervisor_mode_kernel and XENFEAT_writable_page_tables.



# HG changeset patch
# User Ian Campbell <ian.campbell@xxxxxxxxxxxxx>
# Date 1177450516 -3600
# Node ID 3b8bf61f2ad65caeb60a4991a8d687424c437545
# Parent  74b712492dbae3a70fe1a248592b5ff8ef838c2c
LINUX: Fixes for XENFEAT_supervisor_mode_kernel and 
XENFEAT_writable_page_tables.

Signed-of-by: Ian Campbell <ian.campbell@xxxxxxxxxxxxx>
---
 linux-2.6-xen-sparse/arch/x86_64/kernel/entry-xen.S                |    4 ++--
 linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/mmu_context.h |    3 ++-
 2 files changed, 4 insertions(+), 3 deletions(-)

diff -r 74b712492dba -r 3b8bf61f2ad6 
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       Tue Apr 24 
22:00:45 2007 +0100
+++ b/linux-2.6-xen-sparse/arch/x86_64/kernel/entry-xen.S       Tue Apr 24 
22:35:16 2007 +0100
@@ -160,8 +160,8 @@ NMI_MASK = 0x80000000
        testl $NMI_MASK,2*8(%rsp)
        jnz   2f
 
-       testb $1,(xen_features+XENFEAT_supervisor_mode_kernel)
-       jnz   1f
+       cmp   $0x00,(xen_features+XENFEAT_supervisor_mode_kernel)(%rip)
+       jne   1f
 
        /* Direct iret to kernel space. Correct CS and SS. */
        orl   $3,1*8(%rsp)
diff -r 74b712492dba -r 3b8bf61f2ad6 
linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/mmu_context.h
--- a/linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/mmu_context.h        
Tue Apr 24 22:00:45 2007 +0100
+++ b/linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/mmu_context.h        
Tue Apr 24 22:35:16 2007 +0100
@@ -72,7 +72,8 @@ static inline void switch_mm(struct mm_s
        struct mmuext_op _op[3], *op = _op;
 
        if (likely(prev != next)) {
-               BUG_ON(!next->context.pinned);
+               BUG_ON(!xen_feature(XENFEAT_writable_page_tables) &&
+                      !next->context.pinned);
 
                /* stop flush ipis for the previous mm */
                cpu_clear(cpu, prev->cpu_vm_mask);

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


 


Rackspace

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