Author: navaraf
Date: Sun May 11 04:47:57 2008
New Revision: 33429
URL:
http://svn.reactos.org/svn/reactos?rev=33429&view=rev
Log:
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(a)gmail.com>om>.
Modified:
trunk/reactos/drivers/input/kbdclass/kbdclass.c
Modified: trunk/reactos/drivers/input/kbdclass/kbdclass.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/input/kbdclass/kbd…
==============================================================================
--- trunk/reactos/drivers/input/kbdclass/kbdclass.c [iso-8859-1] (original)
+++ trunk/reactos/drivers/input/kbdclass/kbdclass.c [iso-8859-1] Sun May 11 04:47:57 2008
@@ -729,8 +729,8 @@
ASSERT(ClassDeviceExtension->Common.IsClassDO);
+ IoReleaseCancelSpinLock(Irp->CancelIrql);
KeAcquireSpinLock(&ClassDeviceExtension->SpinLock, &OldIrql);
- IoAcquireCancelSpinLock(&OldIrql);
if (ClassDeviceExtension->PendingIrp == Irp)
{
ClassDeviceExtension->PendingIrp = NULL;