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] [xen-unstable] [IA64] kexec: Add identity mapping of EFI

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] [IA64] kexec: Add identity mapping of EFI memory to alt_dtlb_miss
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Mon, 11 Aug 2008 05:50:27 -0700
Delivery-date: Mon, 11 Aug 2008 05:51:03 -0700
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/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/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 Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
# Date 1216696502 -32400
# Node ID 59d4d71420d10d3dfa9fd84668a0236a689f1482
# Parent  91332bc4abd42eac452c1735e75683b1f9b1dc4e
[IA64] kexec: Add identity mapping of EFI memory to alt_dtlb_miss

Cc: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
Cc: Tristan Gingold <tgingold@xxxxxxx>
Cc: Alex Williamson <alex.williamson@xxxxxx>
Cc: Aron Griffis <aron@xxxxxx>
Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>
---
 xen/arch/ia64/xen/ivt.S |   28 ++++++++++++++++++++++++----
 1 files changed, 24 insertions(+), 4 deletions(-)

diff -r 91332bc4abd4 -r 59d4d71420d1 xen/arch/ia64/xen/ivt.S
--- a/xen/arch/ia64/xen/ivt.S   Tue Jul 22 12:15:02 2008 +0900
+++ b/xen/arch/ia64/xen/ivt.S   Tue Jul 22 12:15:02 2008 +0900
@@ -207,17 +207,37 @@ late_alt_dtlb_miss:
 (p8)   br.cond.sptk frametable_miss ;;
 #endif
        // If it is not a Xen address, handle it via page_fault.
+       //    !( ((r22 == 0x18 || r22 == 0x1c) && rr7 == XEN_EFI_RR) ||
+       //       r22 == 0x1e )
+       // Note that rr7 == XEN_EFI_RR implies rr6 == XEN_EFI_RR
        extr.u r22=r16,59,5
        ;;
        dep r20=0,r20,IA64_ITIR_KEY,IA64_ITIR_KEY_LEN   // clear the key
-       cmp.ne p8,p0=0x1e,r22
-(p8)   br.cond.sptk page_fault
-       ;;
+       movl r23=7 << 61
+       ;;
+       mov r23=rr[r23]
+       ;;
+       mov r25=XEN_EFI_RR
+       cmp.eq p8,p0=0x18,r22           // 0xc...
+       ;;
+       cmp.eq.or p8,p0=0x1c,r22        // 0xe...
+       ;;
+       cmp.eq.and p8,p0=r25,r23        // rr7 == XEN_EFI_RR
+       ;;
+       cmp.eq.or p8,p0=0x1e,r22        // 0xf...
+(p8)   br.cond.spnt alt_dtlb_miss_identity_map
+       br.cond.spnt page_fault
+       ;;
+alt_dtlb_miss_identity_map:
        dep r21=-1,r21,IA64_PSR_ED_BIT,1
        or r19=r19,r17          // insert PTE control bits into r19
        mov cr.itir=r20         // set itir with cleared key
        ;;
-       dep r19=r18,r19,4,1     // set bit 4 (uncached) if access to UC area
+       cmp.ne p8,p0=r0,r18             // Xen UC bit set
+       ;;
+       cmp.eq.or p8,p0=0x18,r22        // Region 6 is UC for EFI
+       ;;
+(p8)   dep r19=-1,r19,4,1      // set bit 4 (uncached) if access to UC area
 (p6)   mov cr.ipsr=r21
        ;;
 (p7)   itc.d r19               // insert the TLB entry

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] [IA64] kexec: Add identity mapping of EFI memory to alt_dtlb_miss, Xen patchbot-unstable <=