From: Paul Durrant Date: Thu, 30 Nov 2017 10:11:42 +0000 (+0000) Subject: Don't assume EventPageMdl has been allocated... X-Git-Tag: 9.0.0-rc1~72 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=c856fa04f61c38e11a5c22a272c91f96695bf458;p=pvdrivers%2Fwin%2Fxenbus.git Don't assume EventPageMdl has been allocated... ...when calling EvtchnFifoContract() The allocation is deferred until at least one event channel is allocated, but EvtchnFifoContract() is called from EvtchnFifoRelease()n which can be called before that happens. Signed-off-by: Paul Durrant --- diff --git a/src/xenbus/evtchn_fifo.c b/src/xenbus/evtchn_fifo.c index c0456e0..b8be93b 100644 --- a/src/xenbus/evtchn_fifo.c +++ b/src/xenbus/evtchn_fifo.c @@ -272,7 +272,8 @@ EvtchnFifoContract( __FreePage(Mdl); } - __EvtchnFifoFree(Context->EventPageMdl); + if (Context->EventPageMdl != NULL) + __EvtchnFifoFree(Context->EventPageMdl); Context->EventPageMdl = NULL; Context->EventPageCount = 0;