diff options
author | Tejun Heo <htejun@gmail.com> | 2006-04-02 05:51:53 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-04-02 10:09:20 -0400 |
commit | 2719736779da2c7fbb17d3de16c817b429bfeb9c (patch) | |
tree | f65b910e990cc59805faefc33fbb84cd419572c4 | |
parent | e8384607d4f395985e3cc5f82d75fc73efc2ecf0 (diff) |
[PATCH] libata: add ATA_QCFLAG_IO
Add a new qc flag ATA_QCFLAG_IO. This flag gets set for normal IO
commands originating from SCSI midlayer. This information will be
used by EH to determine transfer speed reconfiguration.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r-- | drivers/scsi/libata-scsi.c | 1 | ||||
-rw-r--r-- | include/linux/libata.h | 3 |
2 files changed, 3 insertions, 1 deletions
diff --git a/drivers/scsi/libata-scsi.c b/drivers/scsi/libata-scsi.c index 096bdffbde11..234e1cadb070 100644 --- a/drivers/scsi/libata-scsi.c +++ b/drivers/scsi/libata-scsi.c | |||
@@ -1188,6 +1188,7 @@ static unsigned int ata_scsi_rw_xlat(struct ata_queued_cmd *qc, const u8 *scsicm | |||
1188 | u64 block; | 1188 | u64 block; |
1189 | u32 n_block; | 1189 | u32 n_block; |
1190 | 1190 | ||
1191 | qc->flags |= ATA_QCFLAG_IO; | ||
1191 | tf->flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE; | 1192 | tf->flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE; |
1192 | 1193 | ||
1193 | if (scsicmd[0] == WRITE_10 || scsicmd[0] == WRITE_6 || | 1194 | if (scsicmd[0] == WRITE_10 || scsicmd[0] == WRITE_6 || |
diff --git a/include/linux/libata.h b/include/linux/libata.h index cbbc821fe22c..a6d829cb0567 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
@@ -161,7 +161,8 @@ enum { | |||
161 | ATA_QCFLAG_SG = (1 << 1), /* have s/g table? */ | 161 | ATA_QCFLAG_SG = (1 << 1), /* have s/g table? */ |
162 | ATA_QCFLAG_SINGLE = (1 << 2), /* no s/g, just a single buffer */ | 162 | ATA_QCFLAG_SINGLE = (1 << 2), /* no s/g, just a single buffer */ |
163 | ATA_QCFLAG_DMAMAP = ATA_QCFLAG_SG | ATA_QCFLAG_SINGLE, | 163 | ATA_QCFLAG_DMAMAP = ATA_QCFLAG_SG | ATA_QCFLAG_SINGLE, |
164 | ATA_QCFLAG_EH_SCHEDULED = (1 << 3), /* EH scheduled */ | 164 | ATA_QCFLAG_IO = (1 << 3), /* standard IO command */ |
165 | ATA_QCFLAG_EH_SCHEDULED = (1 << 4), /* EH scheduled */ | ||
165 | 166 | ||
166 | /* host set flags */ | 167 | /* host set flags */ |
167 | ATA_HOST_SIMPLEX = (1 << 0), /* Host is simplex, one DMA channel per host_set only */ | 168 | ATA_HOST_SIMPLEX = (1 << 0), /* Host is simplex, one DMA channel per host_set only */ |