[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [win-pv-devel] [PATCH 03/15] Fix EvtchnOpen() error path
It's possible for an error in the latter stages of EvtchnOpen() to cause the channel to be left open in Xen. Also the Mask boolean was not being cleared which would lead to ASSERTion failures in checked builds. Signed-off-by: Paul Durrant <paul.durrant@xxxxxxxxxx> --- src/xenbus/evtchn.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/xenbus/evtchn.c b/src/xenbus/evtchn.c index b1528d5..16060aa 100644 --- a/src/xenbus/evtchn.c +++ b/src/xenbus/evtchn.c @@ -452,8 +452,12 @@ fail3: Error("fail3\n"); Channel->LocalPort = 0; + Channel->Mask = FALSE; RtlZeroMemory(&Channel->Parameters, sizeof (XENBUS_EVTCHN_PARAMETERS)); + if (Channel->Type != XENBUS_EVTCHN_TYPE_FIXED) + (VOID) EventChannelClose(LocalPort); + fail2: Error("fail2\n"); -- 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 |