From a6127a1deb8bd7d21c8e220c395c1c561d8023cb Mon Sep 17 00:00:00 2001 From: Thomas Faber Date: Mon, 8 Oct 2012 10:11:42 +0000 Subject: [PATCH] [CSQ] - Do not complete IRP while likely holding a spinlock svn path=/trunk/; revision=57519 --- reactos/lib/drivers/csq/csq.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/reactos/lib/drivers/csq/csq.c b/reactos/lib/drivers/csq/csq.c index 64b1b32c005..e36a7574e0c 100644 --- a/reactos/lib/drivers/csq/csq.c +++ b/reactos/lib/drivers/csq/csq.c @@ -23,7 +23,6 @@ * all happen at DISPATCH_LEVEL all of the time, so thread switching on a single * processor can create races too. */ -/* $Id$ */ #include #undef DECLSPEC_IMPORT @@ -68,11 +67,10 @@ static VOID NTAPI IopCsqCancelRoutine(PDEVICE_OBJECT DeviceObject, /* Now that we have our CSQ, complete the IRP */ Csq->CsqAcquireLock(Csq, &Irql); - { - Csq->CsqRemoveIrp(Csq, Irp); - Csq->CsqCompleteCanceledIrp(Csq, Irp); - } + Csq->CsqRemoveIrp(Csq, Irp); Csq->CsqReleaseLock(Csq, Irql); + + Csq->CsqCompleteCanceledIrp(Csq, Irp); } -- 2.17.1