mirror of
https://github.com/reactos/reactos.git
synced 2024-10-24 23:11:33 +00:00
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:
parent
a907b85b1a
commit
a173ef04c2
|
@ -729,8 +729,8 @@ ClassCancelRoutine(
|
||||||
|
|
||||||
ASSERT(ClassDeviceExtension->Common.IsClassDO);
|
ASSERT(ClassDeviceExtension->Common.IsClassDO);
|
||||||
|
|
||||||
|
IoReleaseCancelSpinLock(Irp->CancelIrql);
|
||||||
KeAcquireSpinLock(&ClassDeviceExtension->SpinLock, &OldIrql);
|
KeAcquireSpinLock(&ClassDeviceExtension->SpinLock, &OldIrql);
|
||||||
IoAcquireCancelSpinLock(&OldIrql);
|
|
||||||
if (ClassDeviceExtension->PendingIrp == Irp)
|
if (ClassDeviceExtension->PendingIrp == Irp)
|
||||||
{
|
{
|
||||||
ClassDeviceExtension->PendingIrp = NULL;
|
ClassDeviceExtension->PendingIrp = NULL;
|
||||||
|
|
Loading…
Reference in a new issue