From c856fa04f61c38e11a5c22a272c91f96695bf458 Mon Sep 17 00:00:00 2001 From: Paul Durrant Date: Thu, 30 Nov 2017 10:11:42 +0000 Subject: [PATCH] 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 --- src/xenbus/evtchn_fifo.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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; -- 2.39.5