aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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)
320 320
321 debug_log("Reached %s\n", __func__); 321 debug_log("Reached %s\n", __func__);
322 322
323 if (floppy->failed_pc == pc)
324 floppy->failed_pc = NULL;
325
323 if (pc->c[0] == GPCMD_READ_10 || pc->c[0] == GPCMD_WRITE_10 || 326 if (pc->c[0] == GPCMD_READ_10 || pc->c[0] == GPCMD_WRITE_10 ||
324 (pc->rq && blk_pc_request(pc->rq))) 327 (pc->rq && blk_pc_request(pc->rq)))
325 uptodate = 1; /* FIXME */ 328 uptodate = 1; /* FIXME */
@@ -435,8 +438,6 @@ static ide_startstop_t idefloppy_pc_intr(ide_drive_t *drive)
435 return ide_stopped; 438 return ide_stopped;
436 } 439 }
437 pc->error = 0; 440 pc->error = 0;
438 if (floppy->failed_pc == pc)
439 floppy->failed_pc = NULL;
440 /* Command finished - Call the callback function */ 441 /* Command finished - Call the callback function */
441 pc->callback(drive); 442 pc->callback(drive);
442 return ide_stopped; 443 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)
627 627
628 debug_log(DBG_PROCS, "Enter %s\n", __func__); 628 debug_log(DBG_PROCS, "Enter %s\n", __func__);
629 629
630 if (tape->failed_pc == pc)
631 tape->failed_pc = NULL;
632
630 if (pc->c[0] == REQUEST_SENSE) { 633 if (pc->c[0] == REQUEST_SENSE) {
631 if (uptodate) 634 if (uptodate)
632 idetape_analyze_error(drive, pc->buf); 635 idetape_analyze_error(drive, pc->buf);
@@ -838,8 +841,6 @@ static ide_startstop_t idetape_pc_intr(ide_drive_t *drive)
838 idetape_postpone_request(drive); 841 idetape_postpone_request(drive);
839 return ide_stopped; 842 return ide_stopped;
840 } 843 }
841 if (tape->failed_pc == pc)
842 tape->failed_pc = NULL;
843 /* Command finished - Call the callback function */ 844 /* Command finished - Call the callback function */
844 pc->callback(drive); 845 pc->callback(drive);
845 return ide_stopped; 846 return ide_stopped;
@@ -1050,8 +1051,6 @@ static ide_startstop_t idetape_media_access_finished(ide_drive_t *drive)
1050 return ide_stopped; 1051 return ide_stopped;
1051 } 1052 }
1052 pc->error = 0; 1053 pc->error = 0;
1053 if (tape->failed_pc == pc)
1054 tape->failed_pc = NULL;
1055 } else { 1054 } else {
1056 pc->error = IDETAPE_ERROR_GENERAL; 1055 pc->error = IDETAPE_ERROR_GENERAL;
1057 tape->failed_pc = NULL; 1056 tape->failed_pc = NULL;