|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] [xen-unstable] [IA64] Fix a bug in INIT handler
# HG changeset patch
# User awilliam@xxxxxxxxxxx
# Node ID 77bf1d1628a77bd9a207aeb99d2cbb400671a109
# Parent 37a8dbe24201b0e81e89d652aabf3f8f1952bfeb
[IA64] Fix a bug in INIT handler
I found a bug in INIT handler. This bug sometimes occurs on
the following conditions.
1. Create a domVTi
2. Run a user program on domVTi
3. Push to INIT switch
When this bug occurs, Xen shows error messages.
This bug occurs if a vCPU of domVTi runs on a pCPU where its
INIT interruption have not occurred yet. It is because
"arch._thread.on_ustack" member in vcpu structure is always
zero and, accordingly, ar.bspstore doesn't switch to Xen RBS
in the MINSTATE_START_SAVE_MIN_PHYS.
This patch adds a checking of ipsr.vm bit into the
MINSTATE_START_SAVE_MIN_PHYS for domVTi. If ipsr.vm bit is 1,
ar.bspstore is switched to Xen RBS.
Signed-off-by: Masaki Kanno <kanno.masaki@xxxxxxxxxxxxxx>
---
xen/arch/ia64/linux-xen/minstate.h | 2 ++
1 files changed, 2 insertions(+)
diff -r 37a8dbe24201 -r 77bf1d1628a7 xen/arch/ia64/linux-xen/minstate.h
--- a/xen/arch/ia64/linux-xen/minstate.h Tue Oct 31 22:25:17 2006 -0700
+++ b/xen/arch/ia64/linux-xen/minstate.h Tue Oct 31 22:25:21 2006 -0700
@@ -38,6 +38,8 @@
*/
#ifdef XEN
# define MINSTATE_START_SAVE_MIN_PHYS
\
+(pKStk) tbit.z pKStk,pUStk=r29,IA64_PSR_VM_BIT;
\
+ ;;
\
(pKStk) movl r3=THIS_CPU(ia64_mca_data);;
\
(pKStk) tpa r3 = r3;;
\
(pKStk) ld8 r3 = [r3];;
\
_______________________________________________
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] Fix a bug in INIT handler,
Xen patchbot-unstable <=
|
|
|
|
|