From: Andrew Morton <akpm@osdl.org>
To: Karl Vogel <karl.vogel@pandora.be>
Cc: Jens Axboe <axboe@suse.de>, linux-mm@kvack.org
Subject: Re: Kernel 2.6.8.1: swap storm of death - nr_requests > 1024 on swap partition
Date: Sat, 28 Aug 2004 14:43:03 -0700 [thread overview]
Message-ID: <20040828144303.0ae2bebe.akpm@osdl.org> (raw)
In-Reply-To: <4130F55A.90705@pandora.be>
(Added linux-mm)
Karl Vogel <karl.vogel@pandora.be> wrote:
>
> Andrew Morton wrote:
> > Karl Vogel <karl.vogel@seagha.com> wrote:
> >
> >>Further testing shows that all the schedulers exhibit this exact same
> >> problem when run with a nr_requests size of 8192 on the drive hosting
> >> the swap partition.
> >>
> >> I tried noop, deadline, as and CFQ with:
> >>
> >> echo 8192 >/sys/block/hda/queue/nr_requests
> >
> >
> > That allows up to 2GB of memory to be under writeout at the same time. The
> > VM cannot touch any of that memory.
>
> Well I used that value as it is the default for CFQ.. and it was with
> CFQ that I had the problems. The patch Jens offered to track down the
> problem, commented out this 'q->nr_requests = 8192' in CFQ and it
> helped. Therefor I tried the other schedulers with this value to see if
> it made a difference.
>
> So if I understand you correctly, CFQ shouldn't be using 8192 on 512Mb
> systems?!
Yup. It's asking for trouble to allow that much memory to be unreclaimably
pinned.
Of course, you could have the same problem with just 128 requests per
queue, and lots of queues. I solved all these problems in the dirty memory
writeback paths. But I forgot about swapout!
> With overcommit_memory set to 1, the program can be run again after the
> OOM kill.. but the OOM killing remains.
>
> With overcommit_memory set to 0 a second run fails. I 'think' it's
> because somehow SwapCache is 500Kb after the OOM, so in effect my system
> doesn't have 1Gb to spare anymore. Doing swapoff/swapon frees this and
> then I can do the calloc(1Gb) again.
>
> Another way to free the SwapCached is to generate lots of I/O doing 'dd
> if=/dev/hda of=/dev/null' ... after a while SwapCached is < 1Mb again.
>
urgh. It sounds like the overcommit logic forgot to account swapcache as
reclaimable. It's been a ton of trouble, that code.
--
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:"aart@kvack.org"> aart@kvack.org </a>
next parent reply other threads:[~2004-08-28 21:43 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20040824124356.GW2355@suse.de>
[not found] ` <412CDE7E.9060307@seagha.com>
[not found] ` <20040826144155.GH2912@suse.de>
[not found] ` <412E13DB.6040102@seagha.com>
[not found] ` <412E31EE.3090102@pandora.be>
[not found] ` <41308C62.7030904@seagha.com>
[not found] ` <20040828125028.2fa2a12b.akpm@osdl.org>
[not found] ` <4130F55A.90705@pandora.be>
2004-08-28 21:43 ` Andrew Morton [this message]
2004-08-28 21:54 ` William Lee Irwin III
2004-08-28 22:13 ` Andrew Morton
2004-08-28 22:28 ` William Lee Irwin III
2004-08-29 10:30 ` Andrew Morton
2004-08-29 14:15 ` Jens Axboe
2004-08-29 14:17 ` Jens Axboe
2004-08-29 14:45 ` Rik van Riel
2004-08-29 20:18 ` Andrew Morton
2004-08-29 20:30 ` Jens Axboe
2004-08-29 20:59 ` Andrew Morton
2004-08-29 22:17 ` William Lee Irwin III
2004-08-29 22:28 ` Andrew Morton
2004-08-30 7:41 ` Hugh Dickins
2004-08-30 15:20 ` Marcelo Tosatti
2004-08-30 18:01 ` Karl Vogel
2004-08-30 17:16 ` Marcelo Tosatti
2004-08-30 22:59 ` Karl Vogel
2004-08-30 20:33 ` Marcelo Tosatti
2004-08-30 22:37 ` Andrew Morton
2004-08-30 22:17 ` Marcelo Tosatti
2004-08-30 23:51 ` Andrew Morton
2004-08-31 10:23 ` Marcelo Tosatti
2004-08-31 16:02 ` Marcelo Tosatti
2004-08-31 17:50 ` Karl Vogel
2004-08-31 16:52 ` Marcelo Tosatti
2004-08-31 18:24 ` Karl Vogel
2004-08-31 17:25 ` Marcelo Tosatti
2004-08-31 19:36 ` Karl Vogel
2004-09-02 9:05 ` Rik van Riel
2004-08-30 23:02 ` Karl Vogel
2004-08-29 16:54 ` Jens Axboe
2004-08-29 17:52 ` William Lee Irwin III
2004-08-28 21:59 ` Karl Vogel
2004-08-29 16:53 ` Jens Axboe
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=20040828144303.0ae2bebe.akpm@osdl.org \
--to=akpm@osdl.org \
--cc=axboe@suse.de \
--cc=karl.vogel@pandora.be \
--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