* write drop behind effect on active scanning
@ 2001-05-23 7:33 Marcelo Tosatti
2001-05-23 14:33 ` Daniel Phillips
2001-05-23 15:39 ` Rik van Riel
0 siblings, 2 replies; 4+ messages in thread
From: Marcelo Tosatti @ 2001-05-23 7:33 UTC (permalink / raw)
To: Rik van Riel, Stephen C. Tweedie; +Cc: lkml, linux-mm
Hi,
I just noticed a "bad" effect of write drop behind yesterday during some
tests.
The problem is that we deactivate written pages, thus making the inactive
list become pretty big (full of unfreeable pages) under write intensive IO
workloads.
So what happens is that we don't do _any_ aging on the active list, and in
the meantime the inactive list (which should have "easily" freeable
pages) is full of locked pages.
I'm going to fix this one by replacing "deactivate_page(page)" to
"ClearPageReferenced(page)" in generic_file_write(). This way the written
pages are aged faster but we avoid the bad effect just described.
Any comments on the fix ?
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: write drop behind effect on active scanning
2001-05-23 14:33 ` Daniel Phillips
@ 2001-05-23 13:25 ` Marcelo Tosatti
0 siblings, 0 replies; 4+ messages in thread
From: Marcelo Tosatti @ 2001-05-23 13:25 UTC (permalink / raw)
To: Daniel Phillips; +Cc: Rik van Riel, Stephen C. Tweedie, lkml, linux-mm
On Wed, 23 May 2001, Daniel Phillips wrote:
> On Wednesday 23 May 2001 09:33, Marcelo Tosatti wrote:
> > Hi,
> >
> > I just noticed a "bad" effect of write drop behind yesterday during
> > some tests.
> >
> > The problem is that we deactivate written pages, thus making the
> > inactive list become pretty big (full of unfreeable pages) under
> > write intensive IO workloads.
> >
> > So what happens is that we don't do _any_ aging on the active list,
> > and in the meantime the inactive list (which should have "easily"
> > freeable pages) is full of locked pages.
> >
> > I'm going to fix this one by replacing "deactivate_page(page)" to
> > "ClearPageReferenced(page)" in generic_file_write(). This way the
> > written pages are aged faster but we avoid the bad effect just
> > described.
> >
> > Any comments on the fix ?
>
> page->age = 0 ?
That would make any full scan through the active list move all dropped
pages from generic_file_write() to the inactive list.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: write drop behind effect on active scanning
2001-05-23 7:33 write drop behind effect on active scanning Marcelo Tosatti
@ 2001-05-23 14:33 ` Daniel Phillips
2001-05-23 13:25 ` Marcelo Tosatti
2001-05-23 15:39 ` Rik van Riel
1 sibling, 1 reply; 4+ messages in thread
From: Daniel Phillips @ 2001-05-23 14:33 UTC (permalink / raw)
To: Marcelo Tosatti, Rik van Riel, Stephen C. Tweedie; +Cc: lkml, linux-mm
On Wednesday 23 May 2001 09:33, Marcelo Tosatti wrote:
> Hi,
>
> I just noticed a "bad" effect of write drop behind yesterday during
> some tests.
>
> The problem is that we deactivate written pages, thus making the
> inactive list become pretty big (full of unfreeable pages) under
> write intensive IO workloads.
>
> So what happens is that we don't do _any_ aging on the active list,
> and in the meantime the inactive list (which should have "easily"
> freeable pages) is full of locked pages.
>
> I'm going to fix this one by replacing "deactivate_page(page)" to
> "ClearPageReferenced(page)" in generic_file_write(). This way the
> written pages are aged faster but we avoid the bad effect just
> described.
>
> Any comments on the fix ?
page->age = 0 ?
--
Daniel
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: write drop behind effect on active scanning
2001-05-23 7:33 write drop behind effect on active scanning Marcelo Tosatti
2001-05-23 14:33 ` Daniel Phillips
@ 2001-05-23 15:39 ` Rik van Riel
1 sibling, 0 replies; 4+ messages in thread
From: Rik van Riel @ 2001-05-23 15:39 UTC (permalink / raw)
To: Marcelo Tosatti; +Cc: Stephen C. Tweedie, lkml, linux-mm
On Wed, 23 May 2001, Marcelo Tosatti wrote:
> I just noticed a "bad" effect of write drop behind yesterday during some
> tests.
>
> The problem is that we deactivate written pages, thus making the inactive
> list become pretty big (full of unfreeable pages) under write intensive IO
> workloads.
>
> So what happens is that we don't do _any_ aging on the active list, and in
> the meantime the inactive list (which should have "easily" freeable
> pages) is full of locked pages.
>
> I'm going to fix this one by replacing "deactivate_page(page)" to
> "ClearPageReferenced(page)" in generic_file_write(). This way the written
> pages are aged faster but we avoid the bad effect just described.
>
> Any comments on the fix ?
1) I agree with it, drop-behind should make the pages we write
very likely for eviction, but we don't want that to stop the
eviction of other not-used pages ...
2) OTOH, if writeout of dirty pages is a problem for the system,
I guess we will want to fix that problem somehow ;)
(but that's another issue)
regards,
Rik
--
Linux MM bugzilla: http://linux-mm.org/bugzilla.shtml
Virtual memory is like a game you can't win;
However, without VM there's truly nothing to lose...
http://www.surriel.com/
http://www.conectiva.com/ http://distro.conectiva.com/
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2001-05-23 15:39 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-05-23 7:33 write drop behind effect on active scanning Marcelo Tosatti
2001-05-23 14:33 ` Daniel Phillips
2001-05-23 13:25 ` Marcelo Tosatti
2001-05-23 15:39 ` Rik van Riel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®