diff options
author | Mark Lord <liml@rtr.ca> | 2009-01-30 18:49:29 -0500 |
---|---|---|
committer | Jeff Garzik <jgarzik@redhat.com> | 2009-03-24 22:02:38 -0400 |
commit | 95db505125fb7bc624b7c3b6747bbeaebbffc2e4 (patch) | |
tree | 5cb2fd75cfa1b3e6d83d94338a01685ff2ec529d /drivers/ata/sata_mv.c | |
parent | f48765ccb48a62596b664aa88a2b0f943c12c0e1 (diff) |
sata_mv: update ata_qc_from_tag
Update the logic in ata_qc_from_tag() to match that used
in similar places elsewhere in libata.
Signed-off-by: Mark Lord <mlord@pobox.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Diffstat (limited to 'drivers/ata/sata_mv.c')
-rw-r--r-- | drivers/ata/sata_mv.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/ata/sata_mv.c b/drivers/ata/sata_mv.c index 0c25f52249df..181f02127410 100644 --- a/drivers/ata/sata_mv.c +++ b/drivers/ata/sata_mv.c | |||
@@ -1628,6 +1628,12 @@ static struct ata_queued_cmd *mv_get_active_qc(struct ata_port *ap) | |||
1628 | if (pp->pp_flags & MV_PP_FLAG_NCQ_EN) | 1628 | if (pp->pp_flags & MV_PP_FLAG_NCQ_EN) |
1629 | return NULL; | 1629 | return NULL; |
1630 | qc = ata_qc_from_tag(ap, ap->link.active_tag); | 1630 | qc = ata_qc_from_tag(ap, ap->link.active_tag); |
1631 | if (qc) { | ||
1632 | if (qc->tf.flags & ATA_TFLAG_POLLING) | ||
1633 | qc = NULL; | ||
1634 | else if (!(qc->flags & ATA_QCFLAG_ACTIVE)) | ||
1635 | qc = NULL; | ||
1636 | } | ||
1631 | if (qc && (qc->tf.flags & ATA_TFLAG_POLLING)) | 1637 | if (qc && (qc->tf.flags & ATA_TFLAG_POLLING)) |
1632 | qc = NULL; | 1638 | qc = NULL; |
1633 | return qc; | 1639 | return qc; |