2002-01-13 17:54:17

by Peter Osterlund

[permalink] [raw]
Subject: 2.5: I/O errors ignored in __scsi_end_request

I/O errors in scsi drivers are being silently ignored in the
__scsi_end_request function in scsi_lib.c. This patch seems obvious
enough to me. (And it does work, at least for the packet writing
module.)

--- linux/drivers/scsi/scsi_lib.c.old Sun Jan 13 18:40:44 2002
+++ linux/drivers/scsi/scsi_lib.c Sun Jan 13 13:45:03 2002
@@ -365,7 +365,7 @@
* If there are blocks left over at the end, set up the command
* to queue the remainder of them.
*/
- if (end_that_request_first(req, 1, sectors)) {
+ if (end_that_request_first(req, uptodate, sectors)) {
if (!requeue)
return SCpnt;


--
Peter Osterlund - [email protected]
http://w1.894.telia.com/~u89404340


2002-01-14 06:44:24

by Jens Axboe

[permalink] [raw]
Subject: Re: 2.5: I/O errors ignored in __scsi_end_request

On Sun, Jan 13 2002, Peter Osterlund wrote:
> I/O errors in scsi drivers are being silently ignored in the
> __scsi_end_request function in scsi_lib.c. This patch seems obvious
> enough to me. (And it does work, at least for the packet writing
> module.)
>
> --- linux/drivers/scsi/scsi_lib.c.old Sun Jan 13 18:40:44 2002
> +++ linux/drivers/scsi/scsi_lib.c Sun Jan 13 13:45:03 2002
> @@ -365,7 +365,7 @@
> * If there are blocks left over at the end, set up the command
> * to queue the remainder of them.
> */
> - if (end_that_request_first(req, 1, sectors)) {
> + if (end_that_request_first(req, uptodate, sectors)) {
> if (!requeue)
> return SCpnt;

Irk, what a silly. Thanks, patch is obviously correct.

--
Jens Axboe