A driver-supplied Cancel routine is called with the cancel spin lock held, it must be released on IRP completion. Patch by R.T.Sivakumar <rtshiva@gmail.com>.

svn path=/trunk/; revision=33429
This commit is contained in:
Filip Navara 2008-05-11 09:47:57 +00:00
parent a907b85b1a
commit a173ef04c2

View file

@ -729,8 +729,8 @@ ClassCancelRoutine(
ASSERT(ClassDeviceExtension->Common.IsClassDO);
IoReleaseCancelSpinLock(Irp->CancelIrql);
KeAcquireSpinLock(&ClassDeviceExtension->SpinLock, &OldIrql);
IoAcquireCancelSpinLock(&OldIrql);
if (ClassDeviceExtension->PendingIrp == Irp)
{
ClassDeviceExtension->PendingIrp = NULL;