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 | } |
