summaryrefslogtreecommitdiff
path: root/drivers/ide
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2008-07-15 21:22:01 +0200
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2008-07-15 21:22:01 +0200
commitdd2e9a032bc552f6e2ae852e81cde602c09d7d3e (patch)
tree4252e71a2a3c1bbe0c5fd2eae404b09f1d99208e /drivers/ide
parent6bf1641ca1c7554f0da54aaf89788731b541bacc (diff)
ide-{floppy,tape}: move checking of ->failed_pc to ->callback
Move checking/resetting of ->failed_pc from ide*_pc_intr() to ->callback as a preparation for adding generic ide_pc_intr() helper. There should be no functional changes caused by this patch. Cc: Borislav Petkov <petkovbb@gmail.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>---
Diffstat (limited to 'drivers/ide')
-rw-r--r--drivers/ide/ide-floppy.c5
-rw-r--r--drivers/ide/ide-tape.c7
2 files changed, 6 insertions, 6 deletions
diff --git a/drivers/ide/ide-floppy.c b/drivers/ide/ide-floppy.c
index e658aafc51da..b1d6905fd8ea 100644
--- a/drivers/ide/ide-floppy.c
+++ b/drivers/ide/ide-floppy.c
@@ -320,6 +320,9 @@ static void ide_floppy_callback(ide_drive_t *drive)
debug_log("Reached %s\n", __func__);
+ if (floppy->failed_pc == pc)
+ floppy->failed_pc = NULL;
+
if (pc->c[0] == GPCMD_READ_10 || pc->c[0] == GPCMD_WRITE_10 ||
(pc->rq && blk_pc_request(pc->rq)))
uptodate = 1; /* FIXME */
@@ -435,8 +438,6 @@ static ide_startstop_t idefloppy_pc_intr(ide_drive_t *drive)
return ide_stopped;
}
pc->error = 0;
- if (floppy->failed_pc == pc)
- floppy->failed_pc = NULL;
/* Command finished - Call the callback function */
pc->callback(drive);
return ide_stopped;
diff --git a/drivers/ide/ide-tape.c b/drivers/ide/ide-tape.c
index 7907a1e41918..0fec58ebee85 100644
--- a/drivers/ide/ide-tape.c
+++ b/drivers/ide/ide-tape.c
@@ -627,6 +627,9 @@ static void ide_tape_callback(ide_drive_t *drive)
debug_log(DBG_PROCS, "Enter %s\n", __func__);
+ if (tape->failed_pc == pc)
+ tape->failed_pc = NULL;
+
if (pc->c[0] == REQUEST_SENSE) {
if (uptodate)
idetape_analyze_error(drive, pc->buf);
@@ -838,8 +841,6 @@ static ide_startstop_t idetape_pc_intr(ide_drive_t *drive)
idetape_postpone_request(drive);
return ide_stopped;
}
- if (tape->failed_pc == pc)
- tape->failed_pc = NULL;
/* Command finished - Call the callback function */
pc->callback(drive);
return ide_stopped;
@@ -1050,8 +1051,6 @@ static ide_startstop_t idetape_media_access_finished(ide_drive_t *drive)
return ide_stopped;
}
pc->error = 0;
- if (tape->failed_pc == pc)
- tape->failed_pc = NULL;
} else {
pc->error = IDETAPE_ERROR_GENERAL;
tape->failed_pc = NULL;