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


[Xen-ia64-devel] [patch 14/16] Kexec: Set page size identity mapping of

To: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-ia64-devel] [patch 14/16] Kexec: Set page size identity mapping of EFI in alt_itlb_miss
From: Simon Horman <horms@xxxxxxxxxxxx>
Date: Wed, 06 Feb 2008 17:28:57 +0900
Cc: Aron Griffis <aron@xxxxxx>, Isaku Yamahata <yamahata@xxxxxxxxxxxxx>, Alex Williamson <alex.williamson@xxxxxx>
Delivery-date: Wed, 06 Feb 2008 01:00:12 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-ia64-devel-request@lists.xensource.com?subject=help>
List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
List-post: <mailto:xen-ia64-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20080206082843.559587291@xxxxxxxxxxxx>
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: quilt/0.46-1
Set page size identity mapping of EFI in alt_itlb_miss
This will also set the page size for identity mapped EFI memory
handled by itlb_miss, as it branches to alt_itlb_miss.

Without this HP rx3600 machines will hang after freeing
init memory.

It is also possible to implement this change in itlb_miss,
but the more comprehensive approach seems beeter to me.

Cc: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
Cc: Tristan Gingold <tgingold@xxxxxxx>
Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>

Index: xen-unstable.hg/xen/arch/ia64/xen/ivt.S
--- xen-unstable.hg.orig/xen/arch/ia64/xen/ivt.S        2008-02-05 
16:18:56.000000000 +0900
+++ xen-unstable.hg/xen/arch/ia64/xen/ivt.S     2008-02-05 16:18:57.000000000 
@@ -194,14 +194,16 @@ late_alt_itlb_miss:
 (p7)   movl r17=(__DIRTY_BITS | _PAGE_AR_RWX)
        movl r19=(((1 << IA64_MAX_PHYS_BITS) - 1) & ~0xfff)
-       mov r20=cr.itir
+       movl r20=(PAGE_SHIFT << 2)
        extr.u r23=r21,IA64_PSR_CPL0_BIT,2      // extract psr.cpl
        and r19=r19,r16         // clear ed, reserved bits, and PTE ctrl bits
        extr.u r18=r16,XEN_VIRT_UC_BIT,1        // extract UC bit
        cmp.ne p8,p0=r0,r23     // psr.cpl != 0?
        or r19=r17,r19          // insert PTE control bits into r19
-       dep r20=0,r20,IA64_ITIR_KEY,IA64_ITIR_KEY_LEN   // clear the key 
+       ;;
+(p6)   movl r20=(IA64_GRANULE_SHIFT << 2)
+(p7)   movl r20=(IA64_GRANULE_SHIFT << 2)
        dep r19=r18,r19,4,1     // set bit 4 (uncached) if access to UC area.
        mov cr.itir=r20         // set itir with cleared key



Xen-ia64-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>