Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/netbsd-3]: src/sys/arch/xen/i386 Pull up revision 1.8 (requested by yamt...
details: https://anonhg.NetBSD.org/src/rev/214408c2a743
branches: netbsd-3
changeset: 575370:214408c2a743
user: tron <tron%NetBSD.org@localhost>
date: Wed Apr 13 21:39:12 2005 +0000
description:
Pull up revision 1.8 (requested by yamt in ticket #146):
fix a bug which corrupts runqueue.
when dealing with events, which are handed to xenevt pseudo device,
don't call wakeup(9)/selnotify(9) at too high IPL. PR/29792.
diffstat:
sys/arch/xen/i386/vector.S | 21 ++++++++++++++++++++-
1 files changed, 20 insertions(+), 1 deletions(-)
diffs (35 lines):
diff -r 47f52049d009 -r 214408c2a743 sys/arch/xen/i386/vector.S
--- a/sys/arch/xen/i386/vector.S Wed Apr 13 21:39:05 2005 +0000
+++ b/sys/arch/xen/i386/vector.S Wed Apr 13 21:39:12 2005 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: vector.S,v 1.6.2.1 2005/03/20 14:30:22 tron Exp $ */
+/* $NetBSD: vector.S,v 1.6.2.2 2005/04/13 21:39:12 tron Exp $ */
/* NetBSD: 1.13 2004/03/11 11:39:26 yamt Exp */
/*
@@ -923,6 +923,25 @@
decl CPUVAR(IDEPTH)
jmp *%esi
+#if defined(XEN) && defined(DOM0OPS)
+IDTVEC(softxenevt)
+ movl $IPL_SOFTXENEVT, CPUVAR(ILEVEL)
+ STI(%eax)
+ incl CPUVAR(IDEPTH)
+#ifdef MULTIPROCESSOR
+ call _C_LABEL(x86_softintlock)
+#endif
+ movl CPUVAR(ISOURCES) + SIR_XENEVT * 4, %edi
+ addl $1,IS_EVCNTLO(%edi)
+ adcl $0,IS_EVCNTHI(%edi)
+ call _C_LABEL(xenevt_notify)
+#ifdef MULTIPROCESSOR
+ call _C_LABEL(x86_softintunlock)
+#endif
+ decl CPUVAR(IDEPTH)
+ jmp *%esi
+#endif /* defined(XEN) && defined(DOM0OPS) */
+
/*
* Trap and fault vector routines
*
Home |
Main Index |
Thread Index |
Old Index