public inbox for linux-mm@kvack.org
 help / color / mirror / Atom feed
From: "Stephen C. Tweedie" <sct@redhat.com>
To: Linus Torvalds <torvalds@transmeta.com>
Cc: "Stephen C. Tweedie" <sct@redhat.com>,
	Rik van Riel <H.H.vanRiel@phys.uu.nl>,
	Jeffrey Hundstad <jeffrey.hundstad@mankato.msus.edu>,
	Linux MM <linux-mm@kvack.org>
Subject: Re: useless report -- perhaps memory allocation problems in 2.1.12[678]
Date: Wed, 18 Nov 1998 09:19:34 GMT	[thread overview]
Message-ID: <199811180919.JAA00748@dax.scot.redhat.com> (raw)
In-Reply-To: <Pine.LNX.3.95.981117171051.1077V-100000@penguin.transmeta.com>

Hi,

On Tue, 17 Nov 1998 17:21:23 -0800 (PST), Linus Torvalds
<torvalds@transmeta.com> said:

> On Wed, 18 Nov 1998, Stephen C. Tweedie wrote:

> Yes. But in that case we already have __GPF_IO set, so in this case we
> _will_ wait synchronously.

Right.

> It's only kswapd that does this asynchronously as far as I can see, and
> it's ok for kswapd to not be that asynchronous. It just must not be _too_
> asynchronous - we must decide to start the requests at some point, to make
> sure there aren't too many things in transit. 

That's exactly my concern, and if it's only kswap which is using the
async code then I don't think it matters too much _where_ we do the
nr_async_pages check.

> So the difference in behaviour then becomes one of "does kswapd actually
> start to synchronously wait on certain pages when it's done a lot of
> asynchronous requests" or "should kswapd just make sure that the async
> requests go out in an orderly manner"? 

There's a related question: should kswapd keep on swapping at all once
it has submitted enough async IO?  Beyond a certain point we _know_ that
these pages will become free; swapping even more dirty pages won't help
us.  There's only any point in kswapd carrying on if we restrict
ourselves to unmapping clean pages: that's the only way we'll actually
increase the free page count right now.

So, should try_to_swap_out skip dirty pages if nr_async_pages is too
high?  This sounds like an attractive answer, if we are below
freepages.low, becuase it will let kswapd find free memory for interrupt
traffic.  If we aren't that low in memory then we don't want to be
unnecessarily unfair to clean pages.

I'm off to SANE now --- back next week.

--Stephen
--
This is a majordomo managed list.  To unsubscribe, send a message with
the body 'unsubscribe linux-mm me@address' to: majordomo@kvack.org

      parent reply	other threads:[~1998-11-18  9:19 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <199811131746.LAA23512@mail.mankato.msus.edu>
1998-11-16 14:27 ` useless report -- perhaps memory allocation problems in 2.1.12[678] Rik van Riel
1998-11-17 11:21   ` Stephen C. Tweedie
1998-11-17 20:18     ` Rik van Riel
1998-11-17 23:14       ` Linus Torvalds
1998-11-18  1:09         ` Stephen C. Tweedie
1998-11-18  1:21           ` Linus Torvalds
1998-11-18  1:41             ` Linus Torvalds
1998-11-18  8:58               ` Rik van Riel
1998-11-18  9:19             ` Stephen C. Tweedie [this message]

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=199811180919.JAA00748@dax.scot.redhat.com \
    --to=sct@redhat.com \
    --cc=H.H.vanRiel@phys.uu.nl \
    --cc=jeffrey.hundstad@mankato.msus.edu \
    --cc=linux-mm@kvack.org \
    --cc=torvalds@transmeta.com \
    /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