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.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/ide/ide-tape.c b/drivers/ide/ide-tape.c
index aed25590d058..fc57cd04391b 100644
--- a/drivers/ide/ide-tape.c
+++ b/drivers/ide/ide-tape.c
@@ -1497,7 +1497,8 @@ static void idetape_create_read_cmd(idetape_tape_t *tape, idetape_pc_t *pc, unsi
1497 set_bit(PC_DMA_RECOMMENDED, &pc->flags); 1497 set_bit(PC_DMA_RECOMMENDED, &pc->flags);
1498} 1498}
1499 1499
1500static void idetape_create_read_buffer_cmd(idetape_tape_t *tape, idetape_pc_t *pc, unsigned int length, struct idetape_bh *bh) 1500static void idetape_create_read_buffer_cmd(idetape_tape_t *tape,
1501 idetape_pc_t *pc, struct idetape_bh *bh)
1501{ 1502{
1502 int size = 32768; 1503 int size = 32768;
1503 struct idetape_bh *p = bh; 1504 struct idetape_bh *p = bh;
@@ -1515,7 +1516,8 @@ static void idetape_create_read_buffer_cmd(idetape_tape_t *tape, idetape_pc_t *p
1515 atomic_set(&p->b_count, 0); 1516 atomic_set(&p->b_count, 0);
1516 p = p->b_reqnext; 1517 p = p->b_reqnext;
1517 } 1518 }
1518 pc->request_transfer = pc->buffer_size = size; 1519 pc->request_transfer = size;
1520 pc->buffer_size = size;
1519} 1521}
1520 1522
1521static void idetape_create_write_cmd(idetape_tape_t *tape, idetape_pc_t *pc, unsigned int length, struct idetape_bh *bh) 1523static void idetape_create_write_cmd(idetape_tape_t *tape, idetape_pc_t *pc, unsigned int length, struct idetape_bh *bh)
@@ -1625,7 +1627,8 @@ static ide_startstop_t idetape_do_request(ide_drive_t *drive,
1625 if (rq->cmd[0] & REQ_IDETAPE_READ_BUFFER) { 1627 if (rq->cmd[0] & REQ_IDETAPE_READ_BUFFER) {
1626 tape->postpone_cnt = 0; 1628 tape->postpone_cnt = 0;
1627 pc = idetape_next_pc_storage(drive); 1629 pc = idetape_next_pc_storage(drive);
1628 idetape_create_read_buffer_cmd(tape, pc, rq->current_nr_sectors, (struct idetape_bh *)rq->special); 1630 idetape_create_read_buffer_cmd(tape, pc,
1631 (struct idetape_bh *)rq->special);
1629 goto out; 1632 goto out;
1630 } 1633 }
1631 if (rq->cmd[0] & REQ_IDETAPE_PC1) { 1634 if (rq->cmd[0] & REQ_IDETAPE_PC1) {