diff options
author | Tejun Heo <tj@kernel.org> | 2010-09-03 05:56:16 -0400 |
---|---|---|
committer | Jens Axboe <jaxboe@fusionio.com> | 2010-09-10 06:35:36 -0400 |
commit | 9cbbdca44ae1a6f512ea1e2be11ced8bbb9d430a (patch) | |
tree | b27713199bcc27c56ccbf7f05b43bb3810a1f412 | |
parent | 4913efe456c987057e5d36a3f0a55422a9072cae (diff) |
block: remove spurious uses of REQ_HARDBARRIER
REQ_HARDBARRIER is deprecated. Remove spurious uses in the following
users. Please note that other than osdblk, all other uses were
already spurious before deprecation.
* osdblk: osdblk_rq_fn() won't receive any request with
REQ_HARDBARRIER set. Remove the test for it.
* pktcdvd: use of REQ_HARDBARRIER in pkt_generic_packet() doesn't mean
anything. Removed.
* aic7xxx_old: Setting MSG_ORDERED_Q_TAG on REQ_HARDBARRIER is
spurious. Removed.
* sas_scsi_host: Setting TASK_ATTR_ORDERED on REQ_HARDBARRIER is
spurious. Removed.
* scsi_tcq: The ordered tag path wasn't being used anyway. Removed.
Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Boaz Harrosh <bharrosh@panasas.com>
Cc: James Bottomley <James.Bottomley@suse.de>
Cc: Peter Osterlund <petero2@telia.com>
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
-rw-r--r-- | drivers/block/osdblk.c | 3 | ||||
-rw-r--r-- | drivers/block/pktcdvd.c | 1 | ||||
-rw-r--r-- | drivers/scsi/aic7xxx_old.c | 21 | ||||
-rw-r--r-- | drivers/scsi/libsas/sas_scsi_host.c | 13 | ||||
-rw-r--r-- | include/scsi/scsi_tcq.h | 6 |
5 files changed, 5 insertions, 39 deletions
diff --git a/drivers/block/osdblk.c b/drivers/block/osdblk.c index 72d62462433d..87311ebac0db 100644 --- a/drivers/block/osdblk.c +++ b/drivers/block/osdblk.c | |||
@@ -310,8 +310,7 @@ static void osdblk_rq_fn(struct request_queue *q) | |||
310 | break; | 310 | break; |
311 | 311 | ||
312 | /* filter out block requests we don't understand */ | 312 | /* filter out block requests we don't understand */ |
313 | if (rq->cmd_type != REQ_TYPE_FS && | 313 | if (rq->cmd_type != REQ_TYPE_FS) { |
314 | !(rq->cmd_flags & REQ_HARDBARRIER)) { | ||
315 | blk_end_request_all(rq, 0); | 314 | blk_end_request_all(rq, 0); |
316 | continue; | 315 | continue; |
317 | } | 316 | } |
diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c index b1cbeb59bb76..0166ea136045 100644 --- a/drivers/block/pktcdvd.c +++ b/drivers/block/pktcdvd.c | |||
@@ -753,7 +753,6 @@ static int pkt_generic_packet(struct pktcdvd_device *pd, struct packet_command * | |||
753 | 753 | ||
754 | rq->timeout = 60*HZ; | 754 | rq->timeout = 60*HZ; |
755 | rq->cmd_type = REQ_TYPE_BLOCK_PC; | 755 | rq->cmd_type = REQ_TYPE_BLOCK_PC; |
756 | rq->cmd_flags |= REQ_HARDBARRIER; | ||
757 | if (cgc->quiet) | 756 | if (cgc->quiet) |
758 | rq->cmd_flags |= REQ_QUIET; | 757 | rq->cmd_flags |= REQ_QUIET; |
759 | 758 | ||
diff --git a/drivers/scsi/aic7xxx_old.c b/drivers/scsi/aic7xxx_old.c index 93984c9dfe14..e1cd6062776c 100644 --- a/drivers/scsi/aic7xxx_old.c +++ b/drivers/scsi/aic7xxx_old.c | |||
@@ -2850,12 +2850,6 @@ aic7xxx_done(struct aic7xxx_host *p, struct aic7xxx_scb *scb) | |||
2850 | aic_dev->r_total++; | 2850 | aic_dev->r_total++; |
2851 | ptr = aic_dev->r_bins; | 2851 | ptr = aic_dev->r_bins; |
2852 | } | 2852 | } |
2853 | if(cmd->device->simple_tags && cmd->request->cmd_flags & REQ_HARDBARRIER) | ||
2854 | { | ||
2855 | aic_dev->barrier_total++; | ||
2856 | if(scb->tag_action == MSG_ORDERED_Q_TAG) | ||
2857 | aic_dev->ordered_total++; | ||
2858 | } | ||
2859 | x = scb->sg_length; | 2853 | x = scb->sg_length; |
2860 | x >>= 10; | 2854 | x >>= 10; |
2861 | for(i=0; i<6; i++) | 2855 | for(i=0; i<6; i++) |
@@ -10144,19 +10138,8 @@ static void aic7xxx_buildscb(struct aic7xxx_host *p, struct scsi_cmnd *cmd, | |||
10144 | /* We always force TEST_UNIT_READY to untagged */ | 10138 | /* We always force TEST_UNIT_READY to untagged */ |
10145 | if (cmd->cmnd[0] != TEST_UNIT_READY && sdptr->simple_tags) | 10139 | if (cmd->cmnd[0] != TEST_UNIT_READY && sdptr->simple_tags) |
10146 | { | 10140 | { |
10147 | if (req->cmd_flags & REQ_HARDBARRIER) | 10141 | hscb->control |= MSG_SIMPLE_Q_TAG; |
10148 | { | 10142 | scb->tag_action = MSG_SIMPLE_Q_TAG; |
10149 | if(sdptr->ordered_tags) | ||
10150 | { | ||
10151 | hscb->control |= MSG_ORDERED_Q_TAG; | ||
10152 | scb->tag_action = MSG_ORDERED_Q_TAG; | ||
10153 | } | ||
10154 | } | ||
10155 | else | ||
10156 | { | ||
10157 | hscb->control |= MSG_SIMPLE_Q_TAG; | ||
10158 | scb->tag_action = MSG_SIMPLE_Q_TAG; | ||
10159 | } | ||
10160 | } | 10143 | } |
10161 | } | 10144 | } |
10162 | if ( !(aic_dev->dtr_pending) && | 10145 | if ( !(aic_dev->dtr_pending) && |
diff --git a/drivers/scsi/libsas/sas_scsi_host.c b/drivers/scsi/libsas/sas_scsi_host.c index f0cfba9a1fc8..535085cd27ec 100644 --- a/drivers/scsi/libsas/sas_scsi_host.c +++ b/drivers/scsi/libsas/sas_scsi_host.c | |||
@@ -130,17 +130,6 @@ static void sas_scsi_task_done(struct sas_task *task) | |||
130 | sc->scsi_done(sc); | 130 | sc->scsi_done(sc); |
131 | } | 131 | } |
132 | 132 | ||
133 | static enum task_attribute sas_scsi_get_task_attr(struct scsi_cmnd *cmd) | ||
134 | { | ||
135 | enum task_attribute ta = TASK_ATTR_SIMPLE; | ||
136 | if (cmd->request && blk_rq_tagged(cmd->request)) { | ||
137 | if (cmd->device->ordered_tags && | ||
138 | (cmd->request->cmd_flags & REQ_HARDBARRIER)) | ||
139 | ta = TASK_ATTR_ORDERED; | ||
140 | } | ||
141 | return ta; | ||
142 | } | ||
143 | |||
144 | static struct sas_task *sas_create_task(struct scsi_cmnd *cmd, | 133 | static struct sas_task *sas_create_task(struct scsi_cmnd *cmd, |
145 | struct domain_device *dev, | 134 | struct domain_device *dev, |
146 | gfp_t gfp_flags) | 135 | gfp_t gfp_flags) |
@@ -160,7 +149,7 @@ static struct sas_task *sas_create_task(struct scsi_cmnd *cmd, | |||
160 | task->ssp_task.retry_count = 1; | 149 | task->ssp_task.retry_count = 1; |
161 | int_to_scsilun(cmd->device->lun, &lun); | 150 | int_to_scsilun(cmd->device->lun, &lun); |
162 | memcpy(task->ssp_task.LUN, &lun.scsi_lun, 8); | 151 | memcpy(task->ssp_task.LUN, &lun.scsi_lun, 8); |
163 | task->ssp_task.task_attr = sas_scsi_get_task_attr(cmd); | 152 | task->ssp_task.task_attr = TASK_ATTR_SIMPLE; |
164 | memcpy(task->ssp_task.cdb, cmd->cmnd, 16); | 153 | memcpy(task->ssp_task.cdb, cmd->cmnd, 16); |
165 | 154 | ||
166 | task->scatter = scsi_sglist(cmd); | 155 | task->scatter = scsi_sglist(cmd); |
diff --git a/include/scsi/scsi_tcq.h b/include/scsi/scsi_tcq.h index 17231385cb37..d6e7994aa634 100644 --- a/include/scsi/scsi_tcq.h +++ b/include/scsi/scsi_tcq.h | |||
@@ -97,13 +97,9 @@ static inline void scsi_deactivate_tcq(struct scsi_device *sdev, int depth) | |||
97 | static inline int scsi_populate_tag_msg(struct scsi_cmnd *cmd, char *msg) | 97 | static inline int scsi_populate_tag_msg(struct scsi_cmnd *cmd, char *msg) |
98 | { | 98 | { |
99 | struct request *req = cmd->request; | 99 | struct request *req = cmd->request; |
100 | struct scsi_device *sdev = cmd->device; | ||
101 | 100 | ||
102 | if (blk_rq_tagged(req)) { | 101 | if (blk_rq_tagged(req)) { |
103 | if (sdev->ordered_tags && req->cmd_flags & REQ_HARDBARRIER) | 102 | *msg++ = MSG_SIMPLE_TAG; |
104 | *msg++ = MSG_ORDERED_TAG; | ||
105 | else | ||
106 | *msg++ = MSG_SIMPLE_TAG; | ||
107 | *msg++ = req->tag; | 103 | *msg++ = req->tag; |
108 | return 2; | 104 | return 2; |
109 | } | 105 | } |