mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] IDE update for 2.6.7-rc3 [8/12]
@ 2004-06-11 16:01 Bartlomiej Zolnierkiewicz
  0 siblings, 0 replies; only message in thread
From: Bartlomiej Zolnierkiewicz @ 2004-06-11 16:01 UTC (permalink / raw)
  To: linux-ide; +Cc: linux-kernel, Willem Riede


[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@elka.pw.edu.pl>

 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);

_


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2004-06-11 16:26 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-06-11 16:01 [PATCH] IDE update for 2.6.7-rc3 [8/12] Bartlomiej Zolnierkiewicz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®