|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [win-pv-devel] [PATCH 02/10] Fix bug in EVTCHN interrupt enabling
The code in EvtchnOpen attempts to enable interrupts on demand when new
channels are added to a list. However there is a bug in the logic that
means interrupts will not be enabled until the second channel is opened.
This patch fixes the bug.
Signed-off-by: Paul Durrant <paul.durrant@xxxxxxxxxx>
---
src/xenbus/evtchn.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/xenbus/evtchn.c b/src/xenbus/evtchn.c
index d2743bd..9ba2e84 100644
--- a/src/xenbus/evtchn.c
+++ b/src/xenbus/evtchn.c
@@ -359,13 +359,13 @@ EvtchnOpen(
Context->Channel[LocalPort] = Channel;
Channel->Active = TRUE;
+ InsertTailList(&Context->List, &Channel->ListEntry);
+
if (!IsListEmpty(&Context->List) && !Context->Enabled) {
EvtchnInterruptEnable(Context);
Context->Enabled = TRUE;
}
- InsertTailList(&Context->List, &Channel->ListEntry);
-
__EvtchnReleaseInterruptLock(Context, DISPATCH_LEVEL);
KeLowerIrql(Irql);
--
2.1.1
_______________________________________________
win-pv-devel mailing list
win-pv-devel@xxxxxxxxxxxxxxxxxxxx
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |