diff options
Diffstat (limited to 'block')
-rw-r--r-- | block/ll_rw_blk.c | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/block/ll_rw_blk.c b/block/ll_rw_blk.c index 75c98d58f4dd..3d489915fd22 100644 --- a/block/ll_rw_blk.c +++ b/block/ll_rw_blk.c | |||
@@ -1143,22 +1143,9 @@ EXPORT_SYMBOL(blk_queue_start_tag); | |||
1143 | void blk_queue_invalidate_tags(struct request_queue *q) | 1143 | void blk_queue_invalidate_tags(struct request_queue *q) |
1144 | { | 1144 | { |
1145 | struct list_head *tmp, *n; | 1145 | struct list_head *tmp, *n; |
1146 | struct request *rq; | ||
1147 | |||
1148 | list_for_each_safe(tmp, n, &q->tag_busy_list) { | ||
1149 | rq = list_entry_rq(tmp); | ||
1150 | 1146 | ||
1151 | if (rq->tag == -1) { | 1147 | list_for_each_safe(tmp, n, &q->tag_busy_list) |
1152 | printk(KERN_ERR | 1148 | blk_requeue_request(q, list_entry_rq(tmp)); |
1153 | "%s: bad tag found on list\n", __FUNCTION__); | ||
1154 | list_del_init(&rq->queuelist); | ||
1155 | rq->cmd_flags &= ~REQ_QUEUED; | ||
1156 | } else | ||
1157 | blk_queue_end_tag(q, rq); | ||
1158 | |||
1159 | rq->cmd_flags &= ~REQ_STARTED; | ||
1160 | __elv_add_request(q, rq, ELEVATOR_INSERT_BACK, 0); | ||
1161 | } | ||
1162 | } | 1149 | } |
1163 | 1150 | ||
1164 | EXPORT_SYMBOL(blk_queue_invalidate_tags); | 1151 | EXPORT_SYMBOL(blk_queue_invalidate_tags); |