From 1efde9717f841ceb37af43aa63af514b873bee85 Mon Sep 17 00:00:00 2001 From: Johannes Anderwald Date: Mon, 27 Feb 2012 20:10:46 +0000 Subject: [PATCH] [USBSTOR] - Do not retry commands more than once - Enable error handling in the data completion stage svn path=/trunk/; revision=55889 --- reactos/drivers/usb/usbstor/error.c | 2 +- reactos/drivers/usb/usbstor/scsi.c | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/reactos/drivers/usb/usbstor/error.c b/reactos/drivers/usb/usbstor/error.c index aa282ef7c7b..3ed594932cd 100644 --- a/reactos/drivers/usb/usbstor/error.c +++ b/reactos/drivers/usb/usbstor/error.c @@ -159,7 +159,7 @@ USBSTOR_HandleTransferError( pCDB = (PCDB)Request->Cdb; ASSERT(pCDB); - if (Status != STATUS_SUCCESS) + if (Status != STATUS_SUCCESS || Context->RetryCount >= 1) { // // Complete the master IRP diff --git a/reactos/drivers/usb/usbstor/scsi.c b/reactos/drivers/usb/usbstor/scsi.c index 154b0ed4afc..8a124468da1 100644 --- a/reactos/drivers/usb/usbstor/scsi.c +++ b/reactos/drivers/usb/usbstor/scsi.c @@ -434,6 +434,7 @@ USBSTOR_DataCompletionRoutine( PVOID Ctx) { PIRP_CONTEXT Context; + NTSTATUS Status; DPRINT("USBSTOR_DataCompletionRoutine Irp %p Ctx %p Status %x\n", Irp, Ctx, Irp->IoStatus.Status); @@ -443,7 +444,6 @@ USBSTOR_DataCompletionRoutine( // Context = (PIRP_CONTEXT)Ctx; -#if 0 if (!NT_SUCCESS(Irp->IoStatus.Status)) { // @@ -454,7 +454,6 @@ USBSTOR_DataCompletionRoutine( ASSERT(Status == STATUS_MORE_PROCESSING_REQUIRED); return STATUS_MORE_PROCESSING_REQUIRED; } -#endif // // send csw