Re: 2.4.20: Proccess stuck in __lock_page ...

Con Kolivas
2003-05-28T10:14:50Z

On Wed, 28 May 2003 20:23, Andrew Morton wrote:
> Matthias Mueller <matthias.mueller@rz.uni-karlsruhe.de> wrote:
> > Works fine on my notebook. Good throughput and no mouse hangs anymore.
>
> Interesting.
>
> Could you please work out which change caused it? Go back to stock 2.4 and
> then apply this:
>
>
> diff -puN drivers/block/ll_rw_blk.c~1 drivers/block/ll_rw_blk.c
> --- 24/drivers/block/ll_rw_blk.c~1 2003-05-28 03:20:42.000000000 -0700
> +++ 24-akpm/drivers/block/ll_rw_blk.c 2003-05-28 03:20:57.000000000 -0700
> @@ -590,10 +590,10 @@ static struct request *__get_request_wai
> register struct request *rq;
> DECLARE_WAITQUEUE(wait, current);
>
> - generic_unplug_device(q);
> add_wait_queue_exclusive(&q->wait_for_requests[rw], &wait);
> do {
> set_current_state(TASK_UNINTERRUPTIBLE);
> + generic_unplug_device(q);
> if (q->rq[rw].count == 0)
> schedule();
> spin_lock_irq(&io_request_lock);

It's not this because this is the layout in my -ck* and it still exhibits the
pauses.