Re: [PATCH] v2.4.4-ac9 highmem deadlock

Marcelo Tosatti (marcelo@conectiva.com.br)
Mon, 14 May 2001 19:29:28 -0300 (BRT)


On Mon, 14 May 2001, Ben LaHaise wrote:

> Hey folks,

Hi.

>
> The patch below consists of 3 seperate fixes for helping remove the
> deadlocks present in current kernels with respect to highmem systems.
> Each fix is to a seperate file, so please accept/reject as such.

<snip>

> The third patch (to vmscan.c) adds a SCHED_YIELD to the page launder code
> before starting a launder loop. This one needs discussion, but what I'm
> attempting to accomplish is that when kswapd is cycling through
> page_launder repeatedly, bdflush or some other task submitting io via the
> bounce buffers needs to be given a chance to run and complete their io
> again. Failure to do so limits the rate of progress under extremely high
> load when the vast majority of io will be transferred via bounce buffers.

Your patch may allow bdflush or some other task to submit IO if kswapd is
looping mad --- but it will not avoid kswapd from eating all the CPU
time, which is the _main_ problem.

If we avoid kswapd from doing such a thing (which is what we should try to
fix in the first place), there is no need for your patch.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/