aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2018-05-11 14:51:03 -0400
committerTejun Heo <tj@kernel.org>2018-05-11 16:10:42 -0400
commit5ac40790b4708e4cb1a64ba2cb77320939bc5240 (patch)
treeaa986357a8e8387bbcdbf92520a32d87310faf19
parent804689ad2d9b66d0d3920b48cf05881049d44589 (diff)
libata: introduce notion of separate hardware tags
Rigth now these are the same, but drivers should be using ->hw_tag for their command setup and issue. Signed-off-by: Jens Axboe <axboe@kernel.dk> Signed-off-by: Tejun Heo <tj@kernel.org>
-rw-r--r--drivers/ata/libata-core.c4
-rw-r--r--include/linux/libata.h3
2 files changed, 4 insertions, 3 deletions
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index 40caad1d8b43..4dc67c770429 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -1600,7 +1600,7 @@ unsigned ata_exec_internal_sg(struct ata_device *dev,
1600 1600
1601 qc = __ata_qc_from_tag(ap, tag); 1601 qc = __ata_qc_from_tag(ap, tag);
1602 1602
1603 qc->tag = tag; 1603 qc->tag = qc->hw_tag = tag;
1604 qc->scsicmd = NULL; 1604 qc->scsicmd = NULL;
1605 qc->ap = ap; 1605 qc->ap = ap;
1606 qc->dev = dev; 1606 qc->dev = dev;
@@ -5125,7 +5125,7 @@ struct ata_queued_cmd *ata_qc_new_init(struct ata_device *dev, int tag)
5125 } 5125 }
5126 5126
5127 qc = __ata_qc_from_tag(ap, tag); 5127 qc = __ata_qc_from_tag(ap, tag);
5128 qc->tag = tag; 5128 qc->tag = qc->hw_tag = tag;
5129 qc->scsicmd = NULL; 5129 qc->scsicmd = NULL;
5130 qc->ap = ap; 5130 qc->ap = ap;
5131 qc->dev = dev; 5131 qc->dev = dev;
diff --git a/include/linux/libata.h b/include/linux/libata.h
index 1795fecdea17..07a8d54ba7af 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -637,7 +637,8 @@ struct ata_queued_cmd {
637 u8 cdb[ATAPI_CDB_LEN]; 637 u8 cdb[ATAPI_CDB_LEN];
638 638
639 unsigned long flags; /* ATA_QCFLAG_xxx */ 639 unsigned long flags; /* ATA_QCFLAG_xxx */
640 unsigned int tag; 640 unsigned int tag; /* libata core tag */
641 unsigned int hw_tag; /* driver tag */
641 unsigned int n_elem; 642 unsigned int n_elem;
642 unsigned int orig_n_elem; 643 unsigned int orig_n_elem;
643 644