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>
This commit is contained in:
Jens Axboe 2018-05-11 12:51:03 -06:00 committed by Tejun Heo
parent 804689ad2d
commit 5ac40790b4
2 changed files with 4 additions and 3 deletions

View File

@ -1600,7 +1600,7 @@ unsigned ata_exec_internal_sg(struct ata_device *dev,
qc = __ata_qc_from_tag(ap, tag);
qc->tag = tag;
qc->tag = qc->hw_tag = tag;
qc->scsicmd = NULL;
qc->ap = ap;
qc->dev = dev;
@ -5125,7 +5125,7 @@ struct ata_queued_cmd *ata_qc_new_init(struct ata_device *dev, int tag)
}
qc = __ata_qc_from_tag(ap, tag);
qc->tag = tag;
qc->tag = qc->hw_tag = tag;
qc->scsicmd = NULL;
qc->ap = ap;
qc->dev = dev;

View File

@ -637,7 +637,8 @@ struct ata_queued_cmd {
u8 cdb[ATAPI_CDB_LEN];
unsigned long flags; /* ATA_QCFLAG_xxx */
unsigned int tag;
unsigned int tag; /* libata core tag */
unsigned int hw_tag; /* driver tag */
unsigned int n_elem;
unsigned int orig_n_elem;