linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Daniel Gryniewicz <dang@fprintf.net>
To: root@chaos.analogic.com
Cc: Robert Love <rml@tech9.net>,
	Szakacsits Szabolcs <szaka@sienet.hu>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] strict VM overcommit for stock 2.4
Date: 18 Jul 2002 15:41:40 -0400	[thread overview]
Message-ID: <1027021302.3439.8.camel@athena.fprintf.net> (raw)
In-Reply-To: <Pine.LNX.3.95.1020718152142.1373B-100000@chaos.analogic.com>

On Thu, 2002-07-18 at 15:35, Richard B. Johnson wrote:
> On 18 Jul 2002, Robert Love wrote:
> 
> > I should also mention this is demand paging, not overcommit.
> > 
> > Overcommit is the property of succeeded more allocations than their is
> > memory in the address space.  The idea being that allocations are lazy,
> > things often do not use their full allocations, etc. etc. as you
> > mentioned.
> > 
> > It is typical a good thing since it lowers VM pressure.
> > 
> > It is not always a good thing, for numerous reasons, and it becomes
> > important in those scenarios to ensure that all allocations can be met
> > by the backing store and consequently we never find ourselves with more
> > memory committed than available and thus never OOM.
> > 
> > This has nothing to do with paging and resource limits as you say.  Btw,
> > without this it is possible to OOM any machine.  OOM is a by-product of
> > allowing overcommit and poor accounting (and perhaps poor
> > software/users), not an incorrectly configured machine.
> 
> It has everything to do with demand-paging. Since on single CPU
> machines, there is only one task executing at any one time, that
> single task can own and use every bit of RAM on the whole machine
> is virtual memory works correctly. For performance reasons, it
> may not actually use all the RAM but, in principle, it is possible.
> 
> If you don't allow that, the single task can use only the RAM that
> was not allocated to other tasks. At the time an allocation is made,
> the kernel cannot know what resources may be available when the task
> requesting the allocation actually starts to use those allocated
> resources. Instead, the kernel allocates resources based upon what
> it 'knows' at the present time. Since it can't see the future anymore
> than you or I, the fact that N processes just called exit() before
> the requesting task touched a single page can't be known.
> 
> FYI multiple CPU machines have compounded the problems because there
> can be several things happening at the same time. Although the MM
> is locked so it's single-threaded, you have a before/after resource 
> history condition that can't be anticipated.
> 
> Cheers,
> Dick Johnson
> 

Is it possible that you're confusing "backing store" with "physical
RAM"?  I was under the impression that strict overcommit used both RAM
and SWAP when deciding whether an allocation should succeed.  If you've
exceeded all of RAM and all of swap, you are OOM.  Period.

Daniel

-- 
Recursion n.:
        See Recursion.
                        -- Random Shack Data Processing Dictionary


--
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/

  reply	other threads:[~2002-07-18 19:41 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-07-11 22:28 [PATCH] strict VM overcommit Robert Love
2002-07-12 17:30 ` [PATCH] strict VM overcommit for stock 2.4 Robert Love
2002-07-18 15:22   ` Szakacsits Szabolcs
2002-07-18 16:31     ` Robert Love
2002-07-18 16:36       ` Szakacsits Szabolcs
2002-07-18 17:42         ` Robert Love
2002-07-18 17:25           ` Szakacsits Szabolcs
2002-07-18 17:31             ` Szakacsits Szabolcs
2002-07-18 18:32               ` Robert Love
2002-07-18 19:58               ` Alan Cox
2002-07-18 18:01                 ` Szakacsits Szabolcs
2002-07-18 18:52                 ` Robert Love
2002-07-18 20:52                   ` Alan Cox
2002-07-19  6:17                 ` Szakacsits Szabolcs
2002-07-18 22:22               ` Rik van Riel
2002-07-19  7:47                 ` Szakacsits Szabolcs
2002-07-18 18:28             ` Robert Love
2002-07-18 17:50               ` Szakacsits Szabolcs
2002-07-18 19:25                 ` stoffel
2002-07-19  5:52                   ` Szakacsits Szabolcs
2002-07-18 18:56               ` Richard B. Johnson
2002-07-18 19:03                 ` Robert Love
2002-07-18 19:19                   ` Richard B. Johnson
2002-07-18 19:22                     ` Robert Love
2002-07-18 20:49                       ` Alan Cox
2002-07-19 16:49                   ` Amit Shah
2002-07-19 17:16                     ` Robert Love
2002-07-20  5:02                       ` Amit Shah
2002-07-18 19:10                 ` Robert Love
2002-07-18 19:35                   ` Richard B. Johnson
2002-07-18 19:41                     ` Daniel Gryniewicz [this message]
2002-07-18 20:23                       ` Richard B. Johnson
2002-07-18 20:43                         ` Daniel Gryniewicz
2002-07-19  7:30                   ` Szakacsits Szabolcs
2002-07-19 18:06                     ` Robert Love
2002-07-18 22:24             ` Rik van Riel
2002-07-18 22:30               ` Robert Love

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=1027021302.3439.8.camel@athena.fprintf.net \
    --to=dang@fprintf.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=rml@tech9.net \
    --cc=root@chaos.analogic.com \
    --cc=szaka@sienet.hu \
    /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