|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] [xen-unstable] [IA64] boot windows server 2003:fix a bug
# HG changeset patch
# User awilliam@xxxxxxxxxxx
# Node ID 87247ceb0acd82acd5d02c06b4a17358b1def880
# Parent be11edf8964e89a39d4fa98890a936503a034d5c
[IA64] boot windows server 2003:fix a bug about nat
Because EML_UNAT may be cahnged by guest bank switch,
it should be saved&restored at entry & exit path.
Signed-off-by: Anthony Xu <anthony.xu@xxxxxxxxx>
---
xen/arch/ia64/vmx/vmx_entry.S | 5 +++++
xen/arch/ia64/vmx/vmx_minstate.h | 7 ++++++-
2 files changed, 11 insertions(+), 1 deletion(-)
diff -r be11edf8964e -r 87247ceb0acd xen/arch/ia64/vmx/vmx_entry.S
--- a/xen/arch/ia64/vmx/vmx_entry.S Mon Jul 31 10:14:31 2006 -0600
+++ b/xen/arch/ia64/vmx/vmx_entry.S Mon Jul 31 10:18:28 2006 -0600
@@ -197,6 +197,11 @@ GLOBAL_ENTRY(ia64_leave_hypervisor)
;;
mov ar.pfs=loc0
adds r20=PT(PR)+16,r12
+ adds r8=PT(EML_UNAT)+16,r12
+ ;;
+ ld8 r8=[r8]
+ ;;
+ mov ar.unat=r8
;;
lfetch [r20],PT(CR_IPSR)-PT(PR)
adds r2 = PT(B6)+16,r12
diff -r be11edf8964e -r 87247ceb0acd xen/arch/ia64/vmx/vmx_minstate.h
--- a/xen/arch/ia64/vmx/vmx_minstate.h Mon Jul 31 10:14:31 2006 -0600
+++ b/xen/arch/ia64/vmx/vmx_minstate.h Mon Jul 31 10:18:28 2006 -0600
@@ -269,7 +269,12 @@
;; \
st8 [r24]=r9; /* ar.csd */ \
st8 [r25]=r10; /* ar.ssd */ \
- ;;
+ ;; \
+ mov r18=ar.unat; \
+ adds r19=PT(EML_UNAT)-PT(R4),r2; \
+ ;; \
+ st8 [r19]=r18; /* eml_unat */ \
+
#define VMX_SAVE_EXTRA \
.mem.offset 0,0; st8.spill [r2]=r4,16; \
_______________________________________________
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] boot windows server 2003:fix a bug about nat,
Xen patchbot-unstable <=
|
|
|
|
|