]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/usb/storage/transport.c
Merge branch 'drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied...
[linux-2.6-omap-h63xx.git] / drivers / usb / storage / transport.c
index 3523a0bfa0ffd429caf8414ff4adae858a4c2ef6..79108d5d3171a62c520aed391d8cca3029e510b6 100644 (file)
@@ -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);