public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Nix <nix@esperi.org.uk>
To: "Al Boldi" <a1426z@gawab.com>
Cc: "'Marcelo Tosatti'" <marcelo.tosatti@cyclades.com>,
	<linux-kernel@vger.kernel.org>
Subject: Re: Kswapd flaw
Date: Tue, 28 Jun 2005 17:25:51 +0100	[thread overview]
Message-ID: <8764vy4fe8.fsf@amaterasu.srvr.nix> (raw)
In-Reply-To: <200506281535.SAA30164@raad.intranet> (Al Boldi's message of "Tue, 28 Jun 2005 18:35:00 +0300")

On Tue, 28 Jun 2005, Al Boldi murmured woefully:
> Nix wrote:{
> I don't think so, except on a process-by-process basis via mlockall().
> (/proc/sys/vm/swappiness lets you say that swapping is more or less
> desirable, but under enough memory pressure paging *will* happen regardless
> of the value of that variable.)
> 
> But I'm mystified as to why you might want to suppress paging. The only
> effect of suppressing it is to reduce the amount of memory you can allocate
> before you run completely out and start killing things.
> }
> 
> Nix,
> You start killing things because you overcommitted, when you were not
> supposed to fault in the first place because you have no swap.

The only thing that is blocked by having no swap is swapping. The only
things that go to swap are things that can't go anywhere else (because
swap is comparatievly slow). As far as I know, the only things that land
in swap are modified private writable file-backed mappings
(e.g. relocations in text sections of programs), and allocated anonymous
mappings (what most people think of as `data'). (Data allocated via
brk() is of the latter type.)

So if swap is turned off, the kernel can still acquire more memory when
short by discarding file-backed pages from the page cache --- this
includes non-modified text pages of programs and modified non-private
file mappings, as well as data read/written via read() and write().

That is, with no swapfile, the kernel can't swap. It can still *page*,
pushing stuff out to files if modified, throwing them out of memory if
not, and reloading them from their original file when needed.

> ( I couldn't find /proc/sys/vm/swappiness in 2.4, although I heard about it
> in 2.6.)

Yeah, it's a 2.6 thing.

-- 
`I lost interest in "blade servers" when I found they didn't throw knives
 at people who weren't supposed to be in your machine room.'
    --- Anthony de Boer

  reply	other threads:[~2005-06-28 16:26 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-27 20:04 Kswapd flaw Al Boldi
2005-06-27 15:58 ` Marcelo Tosatti
2005-06-28  6:37   ` Al Boldi
2005-06-28  8:18     ` Michal Schmidt
2005-06-28  9:08       ` Al Boldi
2005-06-28  9:54         ` Michal Schmidt
2005-06-28 10:50     ` Nix
2005-06-28 11:47       ` Al Boldi
2005-06-28 12:50         ` Nix
2005-06-28 13:52           ` Al Boldi
2005-06-28 14:37             ` Nix
2005-06-28 15:35               ` Al Boldi
2005-06-28 16:25                 ` Nix [this message]
2005-06-28 18:15         ` Helge Hafting
2005-06-28 14:55     ` Paulo Marques
2005-06-28  9:58       ` Marcelo Tosatti
2005-06-28 16:43         ` Al Boldi
     [not found] <4knRo-4Li-9@gated-at.bofh.it>
     [not found] ` <4koWT-5Iy-21@gated-at.bofh.it>
2005-06-28 14:28   ` Robert Hancock
     [not found] <20050628143932.GA14545@logos.cnet>
2005-06-29  4:53 ` Al Boldi

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=8764vy4fe8.fsf@amaterasu.srvr.nix \
    --to=nix@esperi.org.uk \
    --cc=a1426z@gawab.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marcelo.tosatti@cyclades.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