]> git.hungrycats.org Git - linux/commitdiff
[PATCH] arbitrary size ATAPI PIO support bugfixes
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Mon, 18 Oct 2004 13:49:16 +0000 (09:49 -0400)
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Mon, 18 Oct 2004 13:49:16 +0000 (09:49 -0400)
* sg was incorrectly used instead of qc->sg in __atapi_pio_bytes()
* due to obvious typo qc->curbytes wasn't zeroed in ata_qc_new_init()

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
drivers/scsi/libata-core.c

index 862118ae379a2a41da172c328ee2e0e458c36f1e..92ee0ab2f3676dac866b4f5e732b9329b04c92aa 100644 (file)
@@ -2208,7 +2208,7 @@ static void __atapi_pio_bytes(struct ata_queued_cmd *qc, unsigned int bytes)
                ap->pio_task_state = PIO_ST_LAST;
 
 next_sg:
-       sg = &sg[qc->cursg];
+       sg = &qc->sg[qc->cursg];
        page = sg->page;
 
        count = min(sg_dma_len(sg) - qc->cursg_ofs, bytes);
@@ -2586,7 +2586,7 @@ struct ata_queued_cmd *ata_qc_new_init(struct ata_port *ap,
                qc->dev = dev;
                qc->cursect = qc->cursg = qc->cursg_ofs = 0;
                qc->nsect = 0;
-               qc->nbytes = qc->nbytes = 0;
+               qc->nbytes = qc->curbytes = 0;
 
                ata_tf_init(ap, &qc->tf, dev->devno);