public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Laurent Riffard <laurent.riffard@free.fr>
To: Andrew Morton <akpm@osdl.org>
Cc: Kernel development list <linux-kernel@vger.kernel.org>
Subject: Re: 2.6.18-rc3-mm2 - OOM storm
Date: Fri, 11 Aug 2006 01:20:11 +0200	[thread overview]
Message-ID: <44DBBF2B.2050605@free.fr> (raw)
In-Reply-To: <20060810021957.38c82311.akpm@osdl.org>



Le 10.08.2006 11:19, Andrew Morton a écrit :
> On Thu, 10 Aug 2006 11:04:36 +0200
> Laurent Riffard <laurent.riffard@free.fr> wrote:
> 
>> Le 06.08.2006 12:08, Andrew Morton a écrit :
>>> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.18-rc3/26.18-rc3-mm2/
>> Hello,
>>
>> On my system, a cron runs every day to check the integrity of
>> installed RPMS, it runs "rpm -v" on each package, which computes
>> MD5 hash for each installed file and compares this result, the file 
>> size and modification time with values stored in RPM database.
>>
>> This is the workload. Since 2.6.18-rc3-mm2, this processus eats 
>> all the memory and triggers OOM.
>>
>> On my system, "free -t" output normally looks like this ("cached" value 
>> is about half of RAM):
>> # free -t 
>>              total       used       free     shared    buffers     cached
>> Mem:        515032     508512       6520          0      22992     256032
>> -/+ buffers/cache:     229488     285544
>> Swap:      1116428        324    1116104
>> Total:     1631460     508836    1122624
>>
>> After the rpm database check, "free -t" says:
>>              total       used       free     shared    buffers     cached
>> Mem:        515032     507124       7908          0       8132     398296
>> -/+ buffers/cache:     100696     414336
>> Swap:      1116428      34896    1081532
>> Total:     1631460     542020    1089440
>>
>> And the value of "cached" won't decrease.
>>
> 
> Yes, I was just trying to reproduce this.  No luck so far.  Will try your
> .config tomorrow.
> 
> It would be interesting to try disabling CONFIG_ADAPTIVE_READAHEAD -
> perhaps that got broken.

I just try it: when CONFIG_ADAPTIVE_READAHEAD is disabled, 
/proc/meminfo:Cached is stable and never exceeded 230.000, the system 
didn't even try to swap.

$ cat /proc/meminfo   # taken a few minutes after the end of rpm -V
MemTotal:       515032 kB
MemFree:          6612 kB
Buffers:         42212 kB
Cached:         182236 kB
SwapCached:          0 kB
Active:         376256 kB
Inactive:        75468 kB
SwapTotal:     1116428 kB
SwapFree:      1116428 kB
Dirty:             272 kB
Writeback:           0 kB
AnonPages:      227260 kB
Mapped:          62812 kB
Slab:            44968 kB
PageTables:       2152 kB
NFS Unstable:        0 kB
Bounce:              0 kB
CommitLimit:   1373944 kB
Committed_AS:   637400 kB
VmallocTotal:   515796 kB
VmallocUsed:      6916 kB
VmallocChunk:   508760 kB

> Also, are you able to determine whether the problem is specific to `rpm
> -V'?  Are you able to make the leak trigger using other filesystem
> workloads?

Will try...
 
> If it's specific to `rpm -V' then perhaps direct-io is somehow causing
> pagecache leakage.  That would be a bit odd.
> 
> 
> 
> btw, it's not necessary to go all the way to oom to work out if the
> pagecache leak is happening.  After booting, do
> 
> 	echo 3 > /proc/sys/vm/drop_pagecache
> 
> and record the `Cached' figure in /proc/meminfo.  After running some test,
> run `echo 3 > /proc/sys/vm/drop_pagecache' again and check
> /proc/meminfo:Cached.  If it dodn't do gown to a similarly low figure,
> we're leaking pagecache.

I played with these values and as far I can remember, I get some poor  
improvement. Will try to gather some data.
 
> btw2: please use /proc/meminfo output rather than free(1).  Because free(1)
> shows less info, and it does mysterious mangling of the info which it does
> read in ways which confuse me.

Ok
 
-- 
laurent

  reply	other threads:[~2006-08-10 23:18 UTC|newest]

Thread overview: 126+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-06 10:08 2.6.18-rc3-mm2 Andrew Morton
2006-08-06 11:09 ` 2.6.18-rc3-mm2 Michal Piotrowski
2006-08-07  9:52   ` 2.6.18-rc3-mm2 Balbir Singh
2006-08-07 12:16     ` 2.6.18-rc3-mm2 Michal Piotrowski
2006-08-07 14:05       ` 2.6.18-rc3-mm2 Balbir Singh
2006-08-06 13:33 ` 2.6.18-rc3-mm2 Mattia Dongili
2006-08-06 14:55   ` 2.6.18-rc3-mm2 [BUG at mm/vmscan.c:383!] Hugh Dickins
2006-08-06 17:02     ` Mattia Dongili
2006-08-06 14:11 ` 2.6.18-rc3-mm2 Reuben Farrelly
     [not found] ` <b637ec0b0608060848k22af58cbo6f13cee19498c2d2@mail.gmail.com>
2006-08-06 19:09   ` 2.6.18-rc3-mm2 Andrew Morton
2006-08-07  2:18     ` 2.6.18-rc3-mm2 Dmitry Torokhov
2006-08-07 18:47       ` 2.6.18-rc3-mm2 Fabio Comolli
2006-08-07 19:00         ` 2.6.18-rc3-mm2 Dmitry Torokhov
2006-08-08 14:41           ` 2.6.18-rc3-mm2 Rafael J. Wysocki
2006-08-08 17:42             ` 2.6.18-rc3-mm2 Dmitry Torokhov
2006-08-08 18:16               ` 2.6.18-rc3-mm2 Fabio Comolli
2006-08-08 18:24                 ` 2.6.18-rc3-mm2 Dmitry Torokhov
2006-08-08 18:36                   ` 2.6.18-rc3-mm2 Fabio Comolli
2006-08-09  3:47                     ` 2.6.18-rc3-mm2 Dmitry Torokhov
2006-08-09  7:11                       ` 2.6.18-rc3-mm2 Rafael J. Wysocki
2006-08-09 19:47                       ` 2.6.18-rc3-mm2 Fabio Comolli
2006-08-09 20:13                         ` 2.6.18-rc3-mm2 Dmitry Torokhov
2006-08-08 20:32               ` 2.6.18-rc3-mm2 Rafael J. Wysocki
2006-08-08 18:14           ` 2.6.18-rc3-mm2 Fabio Comolli
2006-08-06 22:42 ` 2.6.18-rc3-mm2 Rafael J. Wysocki
2006-08-06 22:54   ` 2.6.18-rc3-mm2 Andrew Morton
2006-08-07  9:15     ` 2.6.18-rc3-mm2 Rafael J. Wysocki
2006-08-07 20:34       ` 2.6.18-rc3-mm2 Rafael J. Wysocki
2006-08-07 20:55         ` 2.6.18-rc3-mm2 Andrew Morton
2006-08-08  5:21           ` 2.6.18-rc3-mm2 Jens Axboe
2006-08-07  2:18   ` 2.6.18-rc3-mm2 Dmitry Torokhov
2006-08-07  2:20     ` 2.6.18-rc3-mm2 Dmitry Torokhov
2006-08-07  2:07 ` 2.6.18-rc3-mm2 Grant Coady
2006-08-07  9:28 ` swsusp regression [Was: 2.6.18-rc3-mm2] Jiri Slaby
2006-08-07 16:23   ` Jason Lunz
2006-08-07 20:47     ` Rafael J. Wysocki
2006-08-08  8:41       ` Jens Axboe
2006-08-08  9:49         ` Jiri Slaby
2006-08-08 10:43           ` Jens Axboe
2006-08-08 10:08       ` Jiri Slaby
2006-08-08 10:43         ` Jens Axboe
2006-08-08 10:59           ` Rafael J. Wysocki
2006-08-08 11:04             ` Jens Axboe
2006-08-08 11:07               ` Jens Axboe
2006-08-08 11:16                 ` Rafael J. Wysocki
2006-08-08 11:19                   ` Jens Axboe
2006-08-08 13:50                     ` Rafael J. Wysocki
2006-08-08 14:06                       ` Jens Axboe
2006-08-08 16:41                         ` Jiri Slaby
2006-08-08 17:53                           ` Jens Axboe
2006-08-07 21:09     ` Jiri Slaby
2006-08-07 13:40 ` x86_64 command line truncated Andy Whitcroft
2006-08-07 14:05   ` Andi Kleen
2006-08-07 14:37     ` x86_64 command line truncated II Andi Kleen
2006-08-07 14:42       ` Andy Whitcroft
2006-08-07 14:46         ` Andi Kleen
2006-08-07 15:04           ` Andy Whitcroft
2006-08-07 15:12             ` [PATCH] x86_64 dirty fix to restore dual command line store Andy Whitcroft
2006-08-07 21:47               ` Keith Mannthey
2006-08-07 21:59                 ` Keith Mannthey
2006-08-07 14:38     ` x86_64 command line truncated Andy Whitcroft
2006-08-07 15:15       ` Andrew Morton
2006-08-07 15:58         ` Andi Kleen
2006-08-07 15:49 ` [-mm patch] make arch/i386/kernel/acpi/boot.c:acpi_force static Adrian Bunk
2006-08-07 16:07   ` Andi Kleen
2006-08-07 15:49 ` [-mm patch] make arch/i386/kernel/apic.c:enable_local_apic static Adrian Bunk
2006-08-07 15:49 ` [-mm patch] net/: make code static Adrian Bunk
2006-08-08  4:51   ` David Miller
2006-08-07 15:50 ` [-mm patch] drivers/crypto/geode-aes.c: cleanups Adrian Bunk
2006-08-07 19:38 ` resume from S3 regression [Was: 2.6.18-rc3-mm2] Mattia Dongili
2006-08-07 20:02   ` Andrew Morton
2006-08-07 20:57     ` Mattia Dongili
2006-08-07 22:09       ` Mattia Dongili
2006-08-07 21:04 ` [RFC: -mm patch] bcm43xx_main.c: remove 3 functions Adrian Bunk
2006-08-08 18:32   ` Michael Buesch
2006-08-08 19:42     ` Adrian Bunk
2006-08-09  4:47       ` Michael Buesch
2006-08-08 22:14     ` Jeff Garzik
2006-08-08 14:39 ` 2.6.18-rc3-mm2: reiserfs problem? Rafael J. Wysocki
2006-08-08 15:12   ` Andrew Morton
     [not found]   ` <20060804192540.17098.39244.stgit@warthog.cambridge.redhat.com>
2006-08-08 17:23     ` [PATCH] ReiserFS: Make sure all dentries refs are released before calling kill_block_super() David Howells
2006-08-08 23:16       ` Rafael J. Wysocki
2006-08-09 10:14         ` David Howells
2006-08-09 10:23           ` Rafael J. Wysocki
2006-08-09 11:00         ` David Howells
2006-08-09 13:43     ` [PATCH] ReiserFS: Make sure all dentries refs are released before calling kill_block_super() [try #2] David Howells
2006-08-09 21:56       ` Rafael J. Wysocki
2006-08-10 10:16         ` David Howells
2006-08-09 19:06 ` 2.6.18-rc3-mm2 - ext3 locking issue? Valdis.Kletnieks
2006-08-09 20:01   ` Andrew Morton
2006-08-09 20:43     ` Valdis.Kletnieks
2006-08-10  3:32       ` Valdis.Kletnieks
2006-08-10 11:40         ` Jiri Slaby
2006-08-10 15:27           ` Andrew Morton
2006-08-10 17:33             ` Mattia Dongili
2006-08-10 17:43               ` Jiri Slaby
2006-08-10 17:44               ` Valdis.Kletnieks
2006-08-11  6:17                 ` Andrew Morton
2006-08-11  6:55                   ` Valdis.Kletnieks
2006-08-11 22:39           ` Laurent Riffard
2006-08-15 23:38   ` Valdis.Kletnieks
2006-08-10  9:04 ` 2.6.18-rc3-mm2 - OOM storm Laurent Riffard
2006-08-10  9:19   ` Andrew Morton
2006-08-10 23:20     ` Laurent Riffard [this message]
2006-08-11 12:31       ` Laurent Riffard
2006-08-11 21:50         ` Mike Galbraith
2006-08-11  8:33     ` Mike Galbraith
2006-08-11  6:55       ` Andrew Morton
2006-08-11  9:37         ` Mike Galbraith
2006-08-12 15:07     ` [patch] " Mike Galbraith
2006-08-12 21:26       ` Laurent Riffard
2006-08-10 12:13 ` [patch] Use rwsems instead of custom locking scheme in net/socket.c and net/dccp/ccid.c Frederik Deweerdt
2006-08-10 12:57   ` David Miller
2006-08-10 13:19     ` Frederik Deweerdt
2006-08-10 13:43 ` 2.6.18-rc3-mm2 [oops: shrink_dcache_for_umount_subtree ?] Reuben Farrelly
2006-08-10 15:38   ` Andrew Morton
2006-08-10 17:38 ` 2.6.18-rc3-mm2 - IPV6_MULTIPLE_TABLES borked Valdis.Kletnieks
2006-08-10 20:02   ` Patrick McHardy
2006-08-10 21:44     ` Valdis.Kletnieks
2006-08-11  2:15 ` 2.6.18-rc3-mm2 - BUG in rt6_lookup() from ipv6_del_addr() Valdis.Kletnieks
2006-08-11  4:20   ` David Miller
2006-08-11 18:11 ` 2.6.18-rc3-mm2 Mark Haverkamp
2006-08-11 18:36   ` 2.6.18-rc3-mm2 Andrew Morton
2006-08-11 20:31     ` 2.6.18-rc3-mm2 Mark Haverkamp
2006-08-11 22:58       ` 2.6.18-rc3-mm2 Andrew Morton
2006-08-23 17:02         ` 2.6.18-rc3-mm2 Mark Haverkamp

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=44DBBF2B.2050605@free.fr \
    --to=laurent.riffard@free.fr \
    --cc=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.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