Re: Memory Problem in 2.4.9 ?

From: Daniel Phillips (phillips@bonn-fries.net)
Date: Tue Aug 21 2001 - 20:13:23 EST


On August 22, 2001 02:48 am, Rik van Riel wrote:
> On Wed, 22 Aug 2001, Daniel Phillips wrote:
>
> > --- ../2.4.9.clean/mm/filemap.c Thu Aug 16 14:12:07 2001
> > +++ ./mm/filemap.c Wed Aug 22 01:11:44 2001
> > @@ -980,7 +980,7 @@
> > static inline void check_used_once (struct page *page)
> > {
> > if (!PageActive(page)) {
> > - if (page->age)
> > + if (page->age > 8)
> > activate_page(page);
> > else {
> > page->age = PAGE_AGE_START;
>
> This makes absolutely no sense since you'll never set the
> page age higher than PAGE_AGE_START until the is actually
> on the active list.

Oops, yes, I forgot for the moment that we no longer age up in
__find_page_nolock. Lets try this instead, which should capture the intended
effect of requiring 4 hits to activate a page (n.b., it's just a test):

--- ../2.4.9.clean/mm/filemap.c Thu Aug 16 14:12:07 2001
+++ ./mm/filemap.c Wed Aug 22 02:02:24 2001
@@ -980,10 +980,9 @@
 static inline void check_used_once (struct page *page)
 {
         if (!PageActive(page)) {
- if (page->age)
+ if (++page->age >= 4)
                         activate_page(page);
                 else {
- page->age = PAGE_AGE_START;
                         ClearPageReferenced(page);
                 }
         }
-
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/



This archive was generated by hypermail 2b29 : Thu Aug 23 2001 - 21:00:46 EST