diff options
author | Albert Lee <albertcc@tw.ibm.com> | 2005-09-30 19:11:35 +0800 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-09-30 07:21:06 -0400 |
commit | 86a7397cda08a65bc4f306e812c846e2437b5347 (patch) | |
tree | 05b9153129a271737271066b6efc648a5639e1bc | |
parent | f9997be974be40e884e9e8157ded2f2f9aed454c (diff) | |
download | kernel-crypto-86a7397cda08a65bc4f306e812c846e2437b5347.tar.gz kernel-crypto-86a7397cda08a65bc4f306e812c846e2437b5347.tar.xz kernel-crypto-86a7397cda08a65bc4f306e812c846e2437b5347.zip |
[PATCH] libata irq-pio: simplify if condition in ata_dataout_task()
- Use if (qc->tf.protocol == ATA_PROT_PIO) instead of
if(is_atapi_taskfile()) in ata_dataout_task()
Signed-off-by: Albert Lee <albertcc@tw.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
-rw-r--r-- | drivers/scsi/libata-core.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/scsi/libata-core.c b/drivers/scsi/libata-core.c index a63758da489..cf5a138cdde 100644 --- a/drivers/scsi/libata-core.c +++ b/drivers/scsi/libata-core.c @@ -3994,13 +3994,7 @@ static void ata_dataout_task(void *_data) */ spin_lock_irqsave(&ap->host_set->lock, flags); - if (is_atapi_taskfile(&qc->tf)) { - /* send CDB */ - atapi_send_cdb(ap, qc); - - if (qc->tf.flags & ATA_TFLAG_POLLING) - queue_work(ata_wq, &ap->pio_task); - } else { + if (qc->tf.protocol == ATA_PROT_PIO) { /* PIO data out protocol. * send first data block. */ @@ -4013,6 +4007,12 @@ static void ata_dataout_task(void *_data) ata_altstatus(ap); /* flush */ /* interrupt handler takes over from here */ + } else { + /* send CDB */ + atapi_send_cdb(ap, qc); + + if (qc->tf.flags & ATA_TFLAG_POLLING) + queue_work(ata_wq, &ap->pio_task); } spin_unlock_irqrestore(&ap->host_set->lock, flags); |