linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Christoph Lameter <clameter@sgi.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: linux-mm@kvack.org
Subject: Re: Use ZVC counters to establish exact size of dirtyable pages
Date: Wed, 14 Feb 2007 15:35:59 -0800 (PST)	[thread overview]
Message-ID: <Pine.LNX.4.64.0702141521090.3615@schroedinger.engr.sgi.com> (raw)
In-Reply-To: <20070214151931.852766f9.akpm@linux-foundation.org>

On Wed, 14 Feb 2007, Andrew Morton wrote:

> > > But this function can, I think, also return negative (ie: very large)
> > > numbers.  I don't think we handle that right.
> > 
> > How would that occur? The only way that I could think this would happen is 
> > if for some strange reason the highmem counts are bigger than the total 
> > counts.
> 
> Dunno, maybe it can't happen.  But those counters are approximate and
> perhaps there are edge cases which occur when differences between them are
> calculated and most of the pages are not free and not on the LRU.
> 
> It all needs careful thought.

That would require a deferral of counters greater than the size of low 
memory. And this is bound highmem so we are talking about 32 bit systems 
that are pretty limited in their number of processors and storage.

The maximum deferral of a counter is 2 * stat_threshhold * nr_cpus. The 
max that I know about on i386 are 64GB systems. The stat threshold for 
zones with a size <128MB is 10 but we have a range from -threashold .. 
+threashold. So for 8 processors a counter can be deferred at most for 8 * 
2 * 10 * 4 kbytes = 640 kbytes. Assume that all 3 counters are off the max 
then we reach 1920 kbytes. Lets say the highmem counters are also off by 
the max then we reach ~ 4 mbytes. This is still far less than the size of 
low memory.

One could now think that the LRU size could get to less than 4 mbytes 
in lowmem and then we would have a problem. But would such a system still be 
functional?

If you want to be safe we can make sure that the number returned is > 0.

--
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-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2007-02-14 23:35 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-02-12 18:16 Use ZVC counters to establish exact size of dirtyable pages Christoph Lameter
2007-02-13  8:04 ` Andrew Morton
2007-02-13 17:43   ` Christoph Lameter
2007-02-13 18:03     ` Andrew Morton
2007-02-14 22:24     ` Andrew Morton
2007-02-14 22:41       ` Christoph Lameter
2007-02-14 22:49         ` Christoph Lameter
2007-02-14 23:19         ` Andrew Morton
2007-02-14 23:35           ` Christoph Lameter [this message]
2007-02-14 23:44             ` Andrew Morton
2007-02-15  0:00               ` Christoph Lameter

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.64.0702141521090.3615@schroedinger.engr.sgi.com \
    --to=clameter@sgi.com \
    --cc=akpm@linux-foundation.org \
    --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;
as well as URLs for NNTP newsgroup(s).