[SCSI] Fix hang with split requests
authorJames Bottomley <James.Bottomley@HansenPartnership.com>
Sat, 20 Sep 2008 00:31:50 +0000 (00:31 +0000)
committerJames Bottomley <James.Bottomley@HansenPartnership.com>
Tue, 23 Sep 2008 19:29:01 +0000 (12:29 -0700)
commit44ea91c597ae4641d9ac21b8bbba0795d2f4261e
tree93a373ec24d3a290533bbcce1e7d038a6fb81179
parent048feec5548c0582ee96148c61b87cccbcb5f9be
[SCSI] Fix hang with split requests

Sometimes, particularly for USB devices with the last sector bug,
requests get completed in chunks.  There's a bug in this in that if
one of the chunks gets an error, we complete that chunk with an error
but never move on to the remaining ones, leading to the request
hanging (because it's not fully completed).

Fix this by completing all remaining chunks if an error is encountered.

Cc: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
drivers/scsi/scsi_lib.c