Author: mjmartin Date: Fri Jan 8 10:55:18 2010 New Revision: 44994 URL: http://svn.reactos.org/svn/reactos?rev=44994&view=rev Log: [usb/usbehci] - CompletePendingRequest: Release the spinlock before and reacquire it after calling IoCallDriver
Modified: trunk/reactos/drivers/usb/usbehci/misc.c Modified: trunk/reactos/drivers/usb/usbehci/misc.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/usbehci/misc.c?rev=44994&r1=44993&r2=44994&view=diff ============================================================================== --- trunk/reactos/drivers/usb/usbehci/misc.c [iso-8859-1] (original) +++ trunk/reactos/drivers/usb/usbehci/misc.c [iso-8859-1] Fri Jan 8 10:55:18 2010 @@ -58,13 +58,12 @@ DPRINT("DescriptorType %x\n", Urb->UrbControlDescriptorRequest.DescriptorType); DPRINT("LanguageId %x\n", Urb->UrbControlDescriptorRequest.LanguageId); - KeReleaseSpinLock(&DeviceExtension->IrpQueueLock, oldIrql); - Irp->IoStatus.Status = STATUS_SUCCESS; Irp->IoStatus.Information = 0; + KeReleaseSpinLock(&DeviceExtension->IrpQueueLock, oldIrql); IoCompleteRequest(Irp, IO_NO_INCREMENT); - return; + KeAcquireSpinLock(&DeviceExtension->IrpQueueLock, &oldIrql); } KeReleaseSpinLock(&DeviceExtension->IrpQueueLock, oldIrql);