aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/ide-tape.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ide/ide-tape.c')
-rw-r--r--drivers/ide/ide-tape.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/ide/ide-tape.c b/drivers/ide/ide-tape.c
index aadf53cfac6f..8324dfa78a3f 100644
--- a/drivers/ide/ide-tape.c
+++ b/drivers/ide/ide-tape.c
@@ -695,7 +695,7 @@ static ide_startstop_t idetape_media_access_finished(ide_drive_t *drive)
695 printk(KERN_ERR "ide-tape: %s: I/O error, ", 695 printk(KERN_ERR "ide-tape: %s: I/O error, ",
696 tape->name); 696 tape->name);
697 /* Retry operation */ 697 /* Retry operation */
698 ide_retry_pc(drive, tape->disk); 698 ide_retry_pc(drive);
699 return ide_stopped; 699 return ide_stopped;
700 } 700 }
701 pc->error = 0; 701 pc->error = 0;
@@ -752,7 +752,7 @@ static ide_startstop_t idetape_do_request(ide_drive_t *drive,
752 (unsigned long long)rq->sector, rq->nr_sectors, 752 (unsigned long long)rq->sector, rq->nr_sectors,
753 rq->current_nr_sectors); 753 rq->current_nr_sectors);
754 754
755 if (!blk_special_request(rq)) { 755 if (!(blk_special_request(rq) || blk_sense_request(rq))) {
756 /* We do not support buffer cache originated requests. */ 756 /* We do not support buffer cache originated requests. */
757 printk(KERN_NOTICE "ide-tape: %s: Unsupported request in " 757 printk(KERN_NOTICE "ide-tape: %s: Unsupported request in "
758 "request queue (%d)\n", drive->name, rq->cmd_type); 758 "request queue (%d)\n", drive->name, rq->cmd_type);
@@ -840,6 +840,9 @@ static ide_startstop_t idetape_do_request(ide_drive_t *drive,
840 BUG(); 840 BUG();
841 841
842out: 842out:
843 /* prepare sense request for this command */
844 ide_prep_sense(drive, rq);
845
843 memset(&cmd, 0, sizeof(cmd)); 846 memset(&cmd, 0, sizeof(cmd));
844 847
845 if (rq_data_dir(rq)) 848 if (rq_data_dir(rq))