From: Linus Torvalds <torvalds@transmeta.com>
To: Rajagopal Ananthanarayanan <ananth@sgi.com>
Cc: Benjamin Redelings I <bredelin@ucla.edu>, linux-mm@kvack.org
Subject: Re: [DATAPOINT] pre7-6 will not swap
Date: Sat, 6 May 2000 12:35:00 -0700 (PDT) [thread overview]
Message-ID: <Pine.LNX.4.10.10005061225460.1470-100000@penguin.transmeta.com> (raw)
In-Reply-To: <39145287.D8F1F0C1@sgi.com>
On Sat, 6 May 2000, Rajagopal Ananthanarayanan wrote:
>
> Linus has taken in the fix to "old" vs. "young" in shrink_mmap,
> and taken out the aggressive counter change (also in shrink_mmap).
> But apparently another change in try_to_swap_out is causing problems.
> I haven't an analytical evaluation, but empericically, if I remove this
> in try_to_swap_out (mm/vmscan.c), dbench runs ok.
Yes. I was thinking some more about it, and it isusing the wrong test. It
must use the same test as the one in page_alloc.cto determine whether
azone is "interesting" or not - otherwise you get into a situation where
page_alloc.c doesn't want to allocate from a zone because it's not quite
empty enough, but at the same time vmscan doesn't want to free pages from
the zone because it's not quite full enough.
No wonder that if you get to that situation, the allocator starts getting
unhappy and says "no free pages".
> --------------- mm/vmscan.c around line 113 --------------
> /*
> * Don't do any of the expensive stuff if
> * we're not really interested in this zone.
> */
> if (!page->zone->zone_wake_kswapd)
> goto out_unlock;
Make this test be the same as in "__alloc_pages()" in mm/page_alloc.c, and
it should be ok. The test there is:
/* Are we supposed to free memory? Don't make it worse.. */
if (!z->zone_wake_kswapd && z->free_pages > z->pages_low) {
and I suspect that we mightactually make the vmscan.c test more eager to
swap stuff out: my private source tree says
/*
* Don't do any of the expensive stuff if
* we're not really interested in this zone.
*/
if (z->free_pages > z->pages_high)
goto out_unlock;
in vmscan.c, and that seems to be quite well-behaved too (but if somebody
has the energy to test the two different versions, I'd absolutely love to
hear results..)
Linus
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux.eu.org/Linux-MM/
next prev parent reply other threads:[~2000-05-06 19:35 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <8evk0f$7jote$1@fido.engr.sgi.com>
2000-05-06 17:12 ` Rajagopal Ananthanarayanan
2000-05-06 4:25 ` Benjamin Redelings I
2000-05-06 19:35 ` Linus Torvalds [this message]
2000-05-06 5:35 ` Benjamin Redelings I
2000-05-06 21:46 ` Rik van Riel
2000-05-06 22:24 ` Rajagopal Ananthanarayanan
2000-05-06 14:03 ` Benjamin Redelings I
2000-05-07 0:22 ` Rik van Riel
2000-05-07 2:23 ` Linus Torvalds
2000-05-07 17:40 ` Rik van Riel
2000-05-07 17:53 ` Linus Torvalds
2000-05-07 19:13 ` Rajagopal Ananthanarayanan
2000-05-07 19:30 ` Linus Torvalds
2000-05-08 20:40 ` gprof data for pre7-6 Rajagopal Ananthanarayanan
2000-05-09 1:52 ` [DATAPOINT] pre7-6 will not swap Quintela Carreira Juan J.
2000-05-09 2:28 ` Rajagopal Ananthanarayanan
2000-05-09 2:33 ` Linus Torvalds
2000-05-09 3:31 ` Rajagopal Ananthanarayanan
2000-05-09 15:56 ` [DATAPOINT] pre7-8 swaps with FREE mem? Benjamin Redelings I
2000-05-06 20:12 ` PG_referenced and lru_cache (cpu%) Roger Larsson
2000-05-06 18:31 ` Rik van Riel
2000-05-06 22:16 ` Roger Larsson
2000-05-05 8:07 [DATAPOINT] pre7-6 will not swap Benjamin Redelings I
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Pine.LNX.4.10.10005061225460.1470-100000@penguin.transmeta.com \
--to=torvalds@transmeta.com \
--cc=ananth@sgi.com \
--cc=bredelin@ucla.edu \
--cc=linux-mm@kvack.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox