Re: plug problem in linux-2.4.0-test11

From: Jens Axboe (axboe@suse.de)
Date: Wed Nov 29 2000 - 09:23:08 EST


On Wed, Nov 29 2000, schwidefsky@de.ibm.com wrote:
> request queue to put them on its internal queue. You could argue
> that it shouldn't dequeue request if q->plugged == 1. On the other
> hand why not, before the disk has nothing to do. Anyway the result

I agree with your reasoning, even if the s390 behaviour is a bit
"non-standard" wrt block devices. Linus, could you apply?

--- drivers/block/ll_rw_blk.c~ Wed Nov 29 15:17:33 2000
+++ drivers/block/ll_rw_blk.c Wed Nov 29 15:18:43 2000
@@ -347,10 +347,9 @@
  */
 static inline void __generic_unplug_device(request_queue_t *q)
 {
- if (!list_empty(&q->queue_head)) {
- q->plugged = 0;
+ q->plugged = 0;
+ if (!list_empty(&q->queue_head))
                 q->request_fn(q);
- }
 }
 
 static void generic_unplug_device(void *data)

-- 
* Jens Axboe <axboe@suse.de>
* SuSE Labs
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Nov 30 2000 - 21:00:22 EST