X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;f=drivers%2Fusb%2Fstorage%2Ftransport.c;h=79108d5d3171a62c520aed391d8cca3029e510b6;hb=56960b546a88844a6f5295a9f81aab9e6b81edc9;hp=3523a0bfa0ffd429caf8414ff4adae858a4c2ef6;hpb=d82bf490948eaf10023ff850d0b5c70e49e0ba76;p=linux-2.6-omap-h63xx.git diff --git a/drivers/usb/storage/transport.c b/drivers/usb/storage/transport.c index 3523a0bfa0f..79108d5d317 100644 --- a/drivers/usb/storage/transport.c +++ b/drivers/usb/storage/transport.c @@ -663,7 +663,7 @@ void usb_stor_invoke_transport(struct scsi_cmnd *srb, struct us_data *us) } /* Did we transfer less than the minimum amount required? */ - if (srb->result == SAM_STAT_GOOD && + if ((srb->result == SAM_STAT_GOOD || srb->sense_buffer[2] == 0) && scsi_bufflen(srb) - scsi_get_resid(srb) < srb->underflow) srb->result = (DID_ERROR << 16) | (SUGGEST_RETRY << 24);