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?... ============================================================================== --- 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);