> On 7 Jan 2001, Zlatko Calusic wrote:
>
> > The following patch cleans up some obsolete structures from the mm &
> > proc code.
> >
> > Beside that it also fixes what I think is a bug:
> >
> > if ((rw == WRITE) && atomic_read(&nr_async_pages) >
> > pager_daemon.swap_cluster * (1 << page_cluster))
> >
> > In that (swapout logic) it effectively says swap out 512KB at once (at
> > least on my memory configuration). I think that is a little too much.
> > I modified it to be a little bit more conservative and send only
> > (1 << page_cluster) to the swap at a time. Same applies to the
> > swapin_readahead() function. Comments welcome.
>
> 512kb is the maximum limit for in-flight swap pages, not the cluster size
> for IO.
>
> swapin_readahead actually sends requests of (1 << page_cluster) to disk
> at each run.
>
OK, maybe I was too fast in concluding with that change. I'm still
trying to find out why is MM working bad in some circumstances (see my
other email to the list).
Anyway, I would than suggest to introduce another /proc entry and call
it appropriately: max_async_pages. Because that is what we care about,
anyway. I'll send another patch.
-- Zlatko - 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/