|
@@ -590,6 +590,12 @@ void elv_insert(request_queue_t *q, struct request *rq, int where)
|
|
|
*/
|
|
|
rq->cmd_flags |= REQ_SOFTBARRIER;
|
|
|
|
|
|
+ /*
|
|
|
+ * Most requeues happen because of a busy condition,
|
|
|
+ * don't force unplug of the queue for that case.
|
|
|
+ */
|
|
|
+ unplug_it = 0;
|
|
|
+
|
|
|
if (q->ordseq == 0) {
|
|
|
list_add(&rq->queuelist, &q->queue_head);
|
|
|
break;
|
|
@@ -604,11 +610,6 @@ void elv_insert(request_queue_t *q, struct request *rq, int where)
|
|
|
}
|
|
|
|
|
|
list_add_tail(&rq->queuelist, pos);
|
|
|
- /*
|
|
|
- * most requeues happen because of a busy condition, don't
|
|
|
- * force unplug of the queue for that case.
|
|
|
- */
|
|
|
- unplug_it = 0;
|
|
|
break;
|
|
|
|
|
|
default:
|