Jeff Garzik wrote: > Brian King wrote: >> Setup nbytes in ata_sg_init_one to the total transfer length >> of the command. >> >> Signed-off-by: Brian King <brking@xxxxxxxxxx> >> --- >> >> libata-dev-bjking1/drivers/scsi/libata-core.c | 1 + >> 1 files changed, 1 insertion(+) >> >> diff -puN drivers/scsi/libata-core.c~libata_setup_nbytes drivers/scsi/libata-core.c >> --- libata-dev/drivers/scsi/libata-core.c~libata_setup_nbytes 2006-03-17 15:35:26.000000000 -0600 >> +++ libata-dev-bjking1/drivers/scsi/libata-core.c 2006-03-17 15:35:26.000000000 -0600 >> @@ -2887,6 +2887,7 @@ void ata_sg_init_one(struct ata_queued_c >> qc->n_elem = 1; >> qc->orig_n_elem = 1; >> qc->buf_virt = buf; >> + qc->nbytes = buflen; > > Why? > > This is largely an internal variable used by the ATAPI code. The ipr driver needs to know the total transfer length of the command in bytes to setup the command to the adapter properly, since the adapter firmware interface requires it. I didn't see anywhere else to get this information, the only other option would be to compute it based on the scatterlist. -- Brian King eServer Storage I/O IBM Linux Technology Center - : send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html