[BLOCK] elevator: run queue in elevator_switch
[linux-2.6.git] / block / elevator.c
index e58928e..a475b1a 100644 (file)
@@ -696,6 +696,8 @@ static void elevator_switch(request_queue_t *q, struct elevator_type *new_e)
                ;
 
        while (q->rq.elvpriv) {
+               blk_remove_plug(q);
+               q->request_fn(q);
                spin_unlock_irq(q->queue_lock);
                msleep(10);
                spin_lock_irq(q->queue_lock);