|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] [xen-unstable] [IA64] vti fault handler clean up: make V
# HG changeset patch
# User Alex Williamson <alex.williamson@xxxxxx>
# Date 1197663137 25200
# Node ID 40f15062d188b4fd8fefec15438b1738490492cc
# Parent ba569af64b44c9514314f8c77283d45c8cf4b49f
[IA64] vti fault handler clean up: make VMX_DBG_FAULT aware of fault in xen
When fault occurs in xen, r21 doesn't point to vcpu so it needs to be
retrieved from cpu_kr.
Signed-off-by: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
---
xen/arch/ia64/vmx/vmx_ivt.S | 8 +++++++-
1 files changed, 7 insertions(+), 1 deletion(-)
diff -r ba569af64b44 -r 40f15062d188 xen/arch/ia64/vmx/vmx_ivt.S
--- a/xen/arch/ia64/vmx/vmx_ivt.S Fri Dec 14 13:09:02 2007 -0700
+++ b/xen/arch/ia64/vmx/vmx_ivt.S Fri Dec 14 13:12:17 2007 -0700
@@ -72,12 +72,18 @@
#ifdef VTI_DEBUG
#define IVT_DEBUG_MASK (IVT_DEBUG_SIZE * (IVT_DEBUG_MAX - 1))
#define VMX_DBG_FAULT(i) \
+ mov r31=pr; \
+ mov r20=cr.ipsr;; \
+ tbit.z p6,p0=r20,IA64_PSR_VM_BIT;; \
+(p6)movl r21=THIS_CPU(cpu_kr)+ \
+ IA64_KR_CURRENT_OFFSET;; \
+(p6)ld8 r21=[r21]; \
+ mov pr=r31;; \
add r16=IVT_CUR_OFS,r21; \
add r17=IVT_DBG_OFS,r21;; \
ld8 r18=[r16];; \
add r17=r18,r17; \
mov r19=cr.iip; \
- mov r20=cr.ipsr; \
mov r22=cr.ifa; \
mov r23=i;; \
st8 [r17]=r19,8; \
_______________________________________________
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] vti fault handler clean up: make VMX_DBG_FAULT aware of fault in xen,
Xen patchbot-unstable <=
|
|
|
|
|