Re: broken VM in 2.4.10-pre9
Linus Torvalds (torvalds@transmeta.com)
Mon, 17 Sep 2001 08:42:35 -0700 (PDT)
On Mon, 17 Sep 2001, Rik van Riel wrote:
>
> > - I don't like the lack of aging in 'reclaim_page()'. It will walk the
> > whole LRU list if required, which kind of defeats the purpose of having
> > reference bits and LRU on that list. The code _claims_ that it almost
> > always succeeds with the first page, but I don't see why it would. I
> > think that comment assumed that the inactive_clean list cannot have any
> > referenced pages, but that's never been true.
>
> This depends on whether we do reactivation in __find_page_nolock()
> or if we leave the page alone and wait for kswapd to do that for
> us.
We should not do _anything_ in __find_page_nolock().
It's positively wrong to touch any aging information there - if you do,
you are guaranteed to not get read-ahead right (ie a page that gets
read-ahead first will behave differently than a page that got read
directly, which just cannot be right).
The aging has to be done at a higher level (ie when you actually _use_
it, not when you search the hash queues).
Linus
-
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/