[prev in list] [next in list] [prev in thread] [next in thread] 

List:       xen-ia64-devel
Subject:    [Xen-ia64-devel] [patch 13/16] Kexec: Set protection key of
From:       Simon Horman <horms () verge ! net ! au>
Date:       2008-01-25 8:20:11
Message-ID: 20080125083443.890480625 () vergenet ! net
[Download RAW message or body]

Set protection key of identity mapping of EFI in alt_itlb_miss.
This will also set the protection key for identity mapped EFI memory
handled by itlb_miss, as it branches to alt_itlb_miss

Without this HP rx3600 machines will not boot

Cc: Isaku Yamahata <yamahata@valinux.co.jp>
Cc: Alex Williamson <alex.williamson@hp.com>
Signed-off-by: Simon Horman <horms@verge.net.au>

Index: 20071119-ia64/xen/arch/ia64/xen/ivt.S
===================================================================
--- 20071119-ia64.orig/xen/arch/ia64/xen/ivt.S	2007-11-25 22:56:35.000000000 -0700
+++ 20071119-ia64/xen/arch/ia64/xen/ivt.S	2007-11-25 22:58:29.000000000 -0700
@@ -194,7 +194,12 @@
 	;;
 late_alt_itlb_miss:
 	mov r21=cr.ipsr
+	cmp.eq p6,p0=0x18,r22   // address == 0xe...
+	cmp.eq p7,p0=0x1c,r22   // address == 0xf...
 	movl r17=PAGE_KERNEL
+	;;
+(p6)	movl r17=(__DIRTY_BITS | _PAGE_AR_RWX | _PAGE_PL_PRIV | _PAGE_MA_UC)
+(p7)	movl r17=(__DIRTY_BITS | _PAGE_AR_RWX)
 	movl r19=(((1 << IA64_MAX_PHYS_BITS) - 1) & ~0xfff)
 	;;
 	mov r20=cr.itir

-- 

-- 
Horms


_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@lists.xensource.com
http://lists.xensource.com/xen-ia64-devel
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic