[PATCH] IDE update for 2.6.7-rc3 [8/12]

From: Bartlomiej Zolnierkiewicz
Date: Fri Jun 11 2004 - 12:12:10 EST



[PATCH] ide: fix REQ_DRIVE_* requests error handling in ide-scsi

If REQ_DRIVE_* request fails ide_end_drive_cmd() should be called
for it not ->end_request(). This was broken by 2.6.5, fix it.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@xxxxxxxxxxxxxx>

linux-2.6.7-rc3-bzolnier/drivers/scsi/ide-scsi.c | 7 +++++++
1 files changed, 7 insertions(+)

diff -puN drivers/scsi/ide-scsi.c~ide_scsi_req_drive drivers/scsi/ide-scsi.c
--- linux-2.6.7-rc3/drivers/scsi/ide-scsi.c~ide_scsi_req_drive 2004-06-10 23:12:23.716220912 +0200
+++ linux-2.6.7-rc3-bzolnier/drivers/scsi/ide-scsi.c 2004-06-10 23:12:23.726219392 +0200
@@ -318,6 +318,13 @@ ide_startstop_t idescsi_atapi_error (ide
if (drive == NULL || (rq = HWGROUP(drive)->rq) == NULL)
return ide_stopped;

+ /* retry only "normal" I/O: */
+ if (rq->flags & (REQ_DRIVE_CMD | REQ_DRIVE_TASK | REQ_DRIVE_TASKFILE)) {
+ rq->errors = 1;
+ ide_end_drive_cmd(drive, stat, err);
+ return ide_stopped;
+ }
+
if (HWIF(drive)->INB(IDE_STATUS_REG) & (BUSY_STAT|DRQ_STAT))
/* force an abort */
HWIF(drive)->OUTB(WIN_IDLEIMMEDIATE,IDE_COMMAND_REG);

_

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/