All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dhaval Giani <dhaval@linux.vnet.ibm.com>
To: Michael Bussmann <bus@mb-net.net>
Cc: linux-kernel@vger.kernel.org
Subject: Re: OOM killer on idle machine
Date: Tue, 5 Feb 2008 16:38:18 +0530	[thread overview]
Message-ID: <20080205110818.GA8333@linux.vnet.ibm.com> (raw)
In-Reply-To: <20080205100423.GA12009@ruf099.fkie.fgan.de>

On Tue, Feb 05, 2008 at 11:04:23AM +0100, Michael Bussmann wrote:
> Hi,
> 
> I'm currently experiencing strange OOM errors on a machine with 8 GB RAM,
> 16 GB swap (Xeon 5150).  After about 5 days uptime the box starts to
> spit out OOM messages.
> 
> The box is mostly idle, so I haven't got any idea what is consuming memory.
> Looking at the output of free it seems that the box has plenty of memory
> left, so I'd be thankful if anybody could shed some light on this issue.
> 
> Thanks in advance for any information.
> 
> Cheers,
> MB
> 
> PS: Please CC me in replies
> 
> Kernel: 2.6.23.14 (also happened with 2.6.23.9 (self-compiled), both with
> SLUB) and linux-image-2.6.22-3-686-bigmem (Debian kernel).
> RAM: 8 GB
> HDD: 2 x 320 GB SATA AHCI (Software RAID-1)
>      6 x 320 GB SATA 3Ware 9650SE-8LPML (3w_9xxx driver)
> 
> Output of free during OOM-situation:
>              total       used       free     shared    buffers     cached
> Mem:       8300144     910360    7389784          0      10588      39460
> -/+ buffers/cache:     860312    7439832
> Swap:     16777208          0   16777208
> 
> First OOM message in syslog:
> 
> Feb  4 16:15:15 kernel: df_inode invoked oom-killer: gfp_mask=0xd0, order=0, oomkilladj=0
> Feb  4 16:15:16 kernel:  [<c01408cb>] out_of_memory+0x69/0x18e
> Feb  4 16:15:16 kernel:  [<c0141eca>] __alloc_pages+0x1fc/0x283
> Feb  4 16:15:16 kernel:  [<c0141f8a>] __get_free_pages+0x39/0x47
> Feb  4 16:15:16 kernel:  [<c011bbc8>] copy_process+0x89/0x1051
> Feb  4 16:15:16 kernel: df_inode invoked oom-killer: gfp_mask=0x40d0, order=1, oomkilladj=0
> Feb  4 16:15:16 kernel:  [<c01408cb>] out_of_memory+0x69/0x18e
> Feb  4 16:15:16 kernel:  [<c0141eca>] __alloc_pages+0x1fc/0x283
> Feb  4 16:15:16 kernel:  [<c0156ef4>] __slab_alloc+0x178/0x475
> Feb  4 16:15:16 kernel:  [<c0157307>] kmem_cache_alloc+0x3c/0x83
> Feb  4 16:15:16 kernel:  [<c0115087>] pgd_alloc+0x58/0xb9
> Feb  4 16:15:16 kernel:  [<c0115087>] pgd_alloc+0x58/0xb9
> Feb  4 16:15:16 kernel:  [<c011b9dd>] mm_init+0xa1/0xc3
> Feb  4 16:15:16 kernel:  [<c015d6d6>] bprm_mm_init+0xf/0x14f
> Feb  4 16:15:16 kernel:  [<c015e4f2>] do_execve+0x62/0x16a
> Feb  4 16:15:16 kernel:  [<c01011a8>] sys_execve+0x2f/0x7b
> Feb  4 16:15:16 kernel:  [<c010285a>] sysenter_past_esp+0x5f/0x85
> Feb  4 16:15:16 kernel:  [<c0330000>] gss_refresh+0xca/0x103
> Feb  4 16:15:16 kernel:  =======================
> Feb  4 16:15:16 kernel: Mem-info:
> Feb  4 16:15:16 kernel: DMA per-cpu:
> Feb  4 16:15:16 kernel: CPU    0: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0
> Feb  4 16:15:16 kernel: CPU    1: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0
> Feb  4 16:15:16 kernel: CPU    2: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0
> Feb  4 16:15:16 kernel: CPU    3: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0
> Feb  4 16:15:16 kernel: Normal per-cpu:
> Feb  4 16:15:16 kernel: CPU    0: Hot: hi:  186, btch:  31 usd:  25   Cold: hi:   62, btch:  15 usd:  55
> Feb  4 16:15:16 kernel: CPU    1: Hot: hi:  186, btch:  31 usd:  28   Cold: hi:   62, btch:  15 usd:  52
> Feb  4 16:15:16 kernel: CPU    2: Hot: hi:  186, btch:  31 usd:  31   Cold: hi:   62, btch:  15 usd:  57
> Feb  4 16:15:16 kernel: CPU    3: Hot: hi:  186, btch:  31 usd:  36   Cold: hi:   62, btch:  15 usd:  52
> Feb  4 16:15:16 kernel: HighMem per-cpu:
> Feb  4 16:15:16 kernel: CPU    0: Hot: hi:  186, btch:  31 usd:  74   Cold: hi:   62, btch:  15 usd:   6
> Feb  4 16:15:16 kernel: CPU    1: Hot: hi:  186, btch:  31 usd: 144   Cold: hi:   62, btch:  15 usd:  13
> Feb  4 16:15:16 kernel: CPU    2: Hot: hi:  186, btch:  31 usd:  90   Cold: hi:   62, btch:  15 usd:  10
> Feb  4 16:15:16 kernel: CPU    3: Hot: hi:  186, btch:  31 usd: 132   Cold: hi:   62, btch:  15 usd:  12
> Feb  4 16:15:16 kernel: Active:23868 inactive:10724 dirty:2 writeback:0 unstable:0
> Feb  4 16:15:16 kernel:  free:1832856 slab:4611 mapped:5566 pagetables:427 bounce:0
> Feb  4 16:15:16 kernel: DMA free:3540kB min:68kB low:84kB high:100kB active:0kB inactive:0kB present:16256kB pages_scanned:0 all_unreclaimable? yes
> Feb  4 16:15:16 kernel: lowmem_reserve[]: 0 873 9636 9636
> Feb  4 16:15:16 kernel: Normal free:3692kB min:3744kB low:4680kB high:5616kB active:7584kB inactive:2960kB present:894080kB pages_scanned:20511 all_unreclaimable? yes
> Feb  4 16:15:16 kernel: lowmem_reserve[]: 0 0 70104 70104
> Feb  4 16:15:16 kernel: HighMem free:7324192kB min:512kB low:9912kB high:19316kB active:87888kB inactive:39936kB present:8973312kB pages_scanned:0 all_unreclaimable? no
> Feb  4 16:15:16 kernel: lowmem_reserve[]: 0 0 0 0
> Feb  4 16:15:16 kernel: DMA: 3*4kB 0*8kB 2*16kB 1*32kB 0*64kB 1*128kB 1*256kB 0*512kB 1*1024kB 1*2048kB 0*4096kB = 3532kB
> Feb  4 16:15:16 kernel: Normal: 1*4kB 21*8kB 28*16kB 4*32kB 3*64kB 1*128kB 1*256kB 1*512kB 0*1024kB 1*2048kB 0*4096kB = 3884kB
> Feb  4 16:15:16 kernel: HighMem: 3671*4kB 3883*8kB 3149*16kB 2519*32kB 1749*64kB 930*128kB 487*256kB 159*512kB 221*1024kB 146*2048kB 1510*4096kB = 7324068kB
> Feb  4 16:15:16 kernel: Swap cache: add 0, delete 0, find 0/0, race 0+0
> Feb  4 16:15:16 kernel: Free swap  = 16777208kB
> Feb  4 16:15:16 kernel: Total swap = 16777208kB
> Feb  4 16:15:16 kernel: Free swap:       16777208kB
> Feb  4 16:15:16 kernel:  [<c011cdb9>] do_fork+0x9a/0x17a
> Feb  4 16:15:16 kernel:  [<c0100cb5>] sys_clone+0x36/0x3b
> Feb  4 16:15:16 kernel:  [<c010285a>] sysenter_past_esp+0x5f/0x85
> Feb  4 16:15:16 kernel:  =======================
> Feb  4 16:15:16 kernel: Mem-info:
> Feb  4 16:15:16 kernel: DMA per-cpu:
> Feb  4 16:15:16 kernel: CPU    0: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0
> Feb  4 16:15:16 kernel: CPU    1: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0
> Feb  4 16:15:16 kernel: CPU    2: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0
> Feb  4 16:15:16 kernel: CPU    3: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0
> Feb  4 16:15:16 kernel: Normal per-cpu:
> Feb  4 16:15:16 kernel: CPU    0: Hot: hi:  186, btch:  31 usd:  25   Cold: hi:   62, btch:  15 usd:  55
> Feb  4 16:15:16 kernel: CPU    1: Hot: hi:  186, btch:  31 usd:  28   Cold: hi:   62, btch:  15 usd:  52
> Feb  4 16:15:16 kernel: CPU    2: Hot: hi:  186, btch:  31 usd:  31   Cold: hi:   62, btch:  15 usd:  57
> Feb  4 16:15:16 kernel: CPU    3: Hot: hi:  186, btch:  31 usd:  36   Cold: hi:   62, btch:  15 usd:  52
> Feb  4 16:15:16 kernel: HighMem per-cpu:
> Feb  4 16:15:16 kernel: CPU    0: Hot: hi:  186, btch:  31 usd:  74   Cold: hi:   62, btch:  15 usd:   6
> Feb  4 16:15:16 kernel: CPU    1: Hot: hi:  186, btch:  31 usd: 144   Cold: hi:   62, btch:  15 usd:  13
> Feb  4 16:15:16 kernel: CPU    2: Hot: hi:  186, btch:  31 usd:  90   Cold: hi:   62, btch:  15 usd:  10
> Feb  4 16:15:16 kernel: CPU    3: Hot: hi:  186, btch:  31 usd: 132   Cold: hi:   62, btch:  15 usd:  12
> Feb  4 16:15:16 kernel: Active:23868 inactive:10724 dirty:2 writeback:0 unstable:0
> Feb  4 16:15:16 kernel:  free:1832856 slab:4611 mapped:5566 pagetables:427 bounce:0
> Feb  4 16:15:16 kernel: DMA free:3540kB min:68kB low:84kB high:100kB active:0kB inactive:0kB present:16256kB pages_scanned:0 all_unreclaimable? yes
> Feb  4 16:15:16 kernel: lowmem_reserve[]: 0 873 9636 9636
> Feb  4 16:15:16 kernel: Normal free:3692kB min:3744kB low:4680kB high:5616kB active:7584kB inactive:2960kB present:894080kB pages_scanned:20511 all_unreclaimable? yes
> Feb  4 16:15:16 kernel: lowmem_reserve[]: 0 0 70104 70104
> Feb  4 16:15:16 kernel: HighMem free:7324192kB min:512kB low:9912kB high:19316kB active:87888kB inactive:39936kB present:8973312kB pages_scanned:0 all_unreclaimable? no
> Feb  4 16:15:16 kernel: lowmem_reserve[]: 0 0 0 0
> Feb  4 16:15:16 kernel: DMA: 3*4kB 0*8kB 2*16kB 1*32kB 0*64kB 1*128kB 1*256kB 0*512kB 1*1024kB 1*2048kB 0*4096kB = 3532kB
> Feb  4 16:15:16 kernel: Normal: 1*4kB 21*8kB 28*16kB 4*32kB 3*64kB 1*128kB 1*256kB 1*512kB 0*1024kB 1*2048kB 0*4096kB = 3884kB
> Feb  4 16:15:16 kernel: HighMem: 3671*4kB 3883*8kB 3149*16kB 2519*32kB 1749*64kB 930*128kB 487*256kB 159*512kB 221*1024kB 146*2048kB 1510*4096kB = 7324068kB
> Feb  4 16:15:16 kernel: Swap cache: add 0, delete 0, find 0/0, race 0+0
> Feb  4 16:15:16 kernel: Free swap  = 16777208kB
> Feb  4 16:15:16 kernel: Total swap = 16777208kB
> Feb  4 16:15:16 kernel: Free swap:       16777208kB
> Feb  4 16:15:16 kernel: 2490368 pages of RAM
> Feb  4 16:15:16 kernel: 2260992 pages of HIGHMEM
> Feb  4 16:15:16 kernel: 415332 reserved pages
> Feb  4 16:15:16 kernel: 24136 pages shared
> Feb  4 16:15:16 kernel: 0 pages swap cached
> Feb  4 16:15:16 kernel: 2 pages dirty
> Feb  4 16:15:16 kernel: 0 pages writeback
> Feb  4 16:15:16 kernel: 5566 pages mapped
> Feb  4 16:15:16 kernel: 4611 pages slab
> Feb  4 16:15:16 kernel: 427 pages pagetables
> 
> Feb  4 16:15:16 kernel: Out of memory: kill process 2933 (sh) score 32755 or a child
> Feb  4 16:15:16 kernel: Killed process 2934 (java)
> Feb  4 16:15:16 kernel: 2490368 pages of RAM
> Feb  4 16:15:16 kernel: 2260992 pages of HIGHMEM
> Feb  4 16:15:16 kernel: 415332 reserved pages
> Feb  4 16:15:16 kernel: 24136 pages shared
> Feb  4 16:15:16 kernel: 0 pages swap cached
> Feb  4 16:15:16 kernel: 2 pages dirty
> Feb  4 16:15:16 kernel: 0 pages writeback
> Feb  4 16:15:16 kernel: 5566 pages mapped
> Feb  4 16:15:16 kernel: 4611 pages slab
> Feb  4 16:15:16 kernel: 427 pages pagetables
> 
> Feb  4 16:15:16 kernel: Out of memory: kill process 13047 (slapd) score 8193 or a child
> Feb  4 16:15:16 kernel: Killed process 13047 (slapd)
> Feb  4 16:15:16 kernel: df_inode invoked oom-killer: gfp_mask=0xd0, order=0, oomkilladj=0
> Feb  4 16:15:16 kernel:  [<c01408cb>] out_of_memory+0x69/0x18e
> Feb  4 16:15:16 kernel:  [<c0141eca>] __alloc_pages+0x1fc/0x283
> Feb  4 16:15:16 kernel:  [<c0141f8a>] __get_free_pages+0x39/0x47
> Feb  4 16:15:16 kernel:  [<c011bbc8>] copy_process+0x89/0x1051
> Feb  4 16:15:16 kernel:  [<c011cdb9>] do_fork+0x9a/0x17a
> Feb  4 16:15:16 kernel:  [<c0100cb5>] sys_clone+0x36/0x3b
> Feb  4 16:15:16 kernel:  [<c010285a>] sysenter_past_esp+0x5f/0x85
> Feb  4 16:15:16 kernel:  =======================
> Feb  4 16:15:16 kernel: Mem-info:
> Feb  4 16:15:16 kernel: DMA per-cpu:
> Feb  4 16:15:16 kernel: CPU    0: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0
> Feb  4 16:15:16 kernel: CPU    1: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0
> Feb  4 16:15:16 kernel: CPU    2: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0
> Feb  4 16:15:16 kernel: CPU    3: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0
> Feb  4 16:15:16 kernel: Normal per-cpu:
> Feb  4 16:15:16 kernel: CPU    0: Hot: hi:  186, btch:  31 usd:  25   Cold: hi:   62, btch:  15 usd:  55
> Feb  4 16:15:16 kernel: CPU    1: Hot: hi:  186, btch:  31 usd:  28   Cold: hi:   62, btch:  15 usd:  52
> Feb  4 16:15:16 kernel: CPU    2: Hot: hi:  186, btch:  31 usd:  33   Cold: hi:   62, btch:  15 usd:  57
> Feb  4 16:15:16 kernel: CPU    3: Hot: hi:  186, btch:  31 usd:  36   Cold: hi:   62, btch:  15 usd:  52
> Feb  4 16:15:16 kernel: HighMem per-cpu:
> Feb  4 16:15:16 kernel: CPU    0: Hot: hi:  186, btch:  31 usd:  74   Cold: hi:   62, btch:  15 usd:   6
> Feb  4 16:15:16 kernel: CPU    1: Hot: hi:  186, btch:  31 usd: 144   Cold: hi:   62, btch:  15 usd:  13
> Feb  4 16:15:16 kernel: CPU    2: Hot: hi:  186, btch:  31 usd: 179   Cold: hi:   62, btch:  15 usd:  10
> Feb  4 16:15:16 kernel: CPU    3: Hot: hi:  186, btch:  31 usd: 132   Cold: hi:   62, btch:  15 usd:  12
> Feb  4 16:15:16 kernel: Active:23211 inactive:10724 dirty:2 writeback:0 unstable:0
> Feb  4 16:15:16 kernel:  free:1833444 slab:4611 mapped:5201 pagetables:427 bounce:0
> Feb  4 16:15:16 kernel: DMA free:3540kB min:68kB low:84kB high:100kB active:0kB inactive:0kB present:16256kB pages_scanned:0 all_unreclaimable? yes
> Feb  4 16:15:16 kernel: lowmem_reserve[]: 0 873 9636 9636
> Feb  4 16:15:16 kernel: Normal free:3692kB min:3744kB low:4680kB high:5616kB active:7584kB inactive:2960kB present:894080kB pages_scanned:20511 all_unreclaimable? yes
> Feb  4 16:15:16 kernel: lowmem_reserve[]: 0 0 70104 70104
> Feb  4 16:15:16 kernel: HighMem free:7326544kB min:512kB low:9912kB high:19316kB active:85260kB inactive:39936kB present:8973312kB pages_scanned:0 all_unreclaimable? no
> Feb  4 16:15:16 kernel: lowmem_reserve[]: 0 0 0 0
> Feb  4 16:15:16 kernel: DMA: 3*4kB 0*8kB 2*16kB 1*32kB 0*64kB 1*128kB 1*256kB 0*512kB 1*1024kB 1*2048kB 0*4096kB = 3532kB
> Feb  4 16:15:16 kernel: Normal: 1*4kB 21*8kB 28*16kB 4*32kB 3*64kB 1*128kB 1*256kB 1*512kB 0*1024kB 1*2048kB 0*4096kB = 3884kB
> Feb  4 16:15:16 kernel: HighMem: 3864*4kB 3907*8kB 3148*16kB 2503*32kB 1737*64kB 939*128kB 489*256kB 159*512kB 220*1024kB 147*2048kB 1510*4096kB = 7326424kB
> Feb  4 16:15:16 kernel: Swap cache: add 0, delete 0, find 0/0, race 0+0
> Feb  4 16:15:16 kernel: Free swap  = 16777208kB
> Feb  4 16:15:16 kernel: Total swap = 16777208kB
> Feb  4 16:15:16 kernel: Free swap:       16777208kB
> 
> SysRQ+m shows:
> 
> Feb  4 16:35:56 kernel: SysRq : Show Memory
> Feb  4 16:35:56 kernel: Mem-info:
> Feb  4 16:35:56 kernel: DMA per-cpu:
> Feb  4 16:35:56 kernel: CPU    0: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0
> Feb  4 16:35:56 kernel: CPU    1: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0                                                                                  Feb  4 16:35:56 kernel: CPU    2: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0                                                                                  Feb  4 16:35:56 kernel: CPU    3: Hot: hi:    0, btch:   1 usd:   0   Cold: hi:    0, btch:   1 usd:   0
> Feb  4 16:35:56 kernel: Normal per-cpu:
> Feb  4 16:35:56 kernel: CPU    0: Hot: hi:  186, btch:  31 usd:  26   Cold: hi:   62, btch:  15 usd:  51
> Feb  4 16:35:56 kernel: CPU    1: Hot: hi:  186, btch:  31 usd:  10   Cold: hi:   62, btch:  15 usd:  47
> Feb  4 16:35:56 kernel: CPU    2: Hot: hi:  186, btch:  31 usd:  25   Cold: hi:   62, btch:  15 usd:  50
> Feb  4 16:35:56 kernel: CPU    3: Hot: hi:  186, btch:  31 usd:   7   Cold: hi:   62, btch:  15 usd:  59
> Feb  4 16:35:56 kernel: HighMem per-cpu:
> Feb  4 16:35:56 kernel: CPU    0: Hot: hi:  186, btch:  31 usd:   6   Cold: hi:   62, btch:  15 usd:   6
> Feb  4 16:35:56 kernel: CPU    1: Hot: hi:  186, btch:  31 usd:  15   Cold: hi:   62, btch:  15 usd:  14
> Feb  4 16:35:56 kernel: CPU    2: Hot: hi:  186, btch:  31 usd:  98   Cold: hi:   62, btch:  15 usd:   4
> Feb  4 16:35:56 kernel: CPU    3: Hot: hi:  186, btch:  31 usd:  47   Cold: hi:   62, btch:  15 usd:   3
> Feb  4 16:35:56 kernel: Active:13145 inactive:7163 dirty:0 writeback:0 unstable:0
> Feb  4 16:35:56 kernel:  free:1847537 slab:4426 mapped:3787 pagetables:360 bounce:0
> Feb  4 16:35:56 kernel: DMA free:3560kB min:68kB low:84kB high:100kB active:8kB inactive:0kB present:16256kB pages_scanned:108 all_unreclaimable? yes
> Feb  4 16:35:56 kernel: lowmem_reserve[]: 0 873 9636 9636
> Feb  4 16:35:56 kernel: Normal free:3980kB min:3744kB low:4680kB high:5616kB active:5396kB inactive:5008kB present:894080kB pages_scanned:20561 all_unreclaimable? yes
> Feb  4 16:35:56 kernel: lowmem_reserve[]: 0 0 70104 70104
> Feb  4 16:35:56 kernel: HighMem free:7382608kB min:512kB low:9912kB high:19316kB active:47176kB inactive:23644kB present:8973312kB pages_scanned:0 all_unreclaimable? no
> Feb  4 16:35:56 kernel: lowmem_reserve[]: 0 0 0 0
> Feb  4 16:35:56 kernel: DMA: 2*4kB 4*8kB 2*16kB 1*32kB 0*64kB 1*128kB 1*256kB 0*512kB 1*1024kB 1*2048kB 0*4096kB = 3560kB
> Feb  4 16:35:56 kernel: Normal: 75*4kB 10*8kB 21*16kB 4*32kB 3*64kB 1*128kB 1*256kB 1*512kB 0*1024kB 1*2048kB 0*4096kB = 3980kB
> Feb  4 16:35:56 kernel: HighMem: 1036*4kB 2516*8kB 1914*16kB 1571*32kB 1176*64kB 785*128kB 533*256kB 336*512kB 230*1024kB 148*2048kB 1527*4096kB = 7382608kB
> Feb  4 16:35:56 kernel: Swap cache: add 0, delete 0, find 0/0, race 0+0
> Feb  4 16:35:56 kernel: Free swap  = 16777208kB
> Feb  4 16:35:56 kernel: Total swap = 16777208kB
> Feb  4 16:35:56 kernel: Free swap:       16777208kB
> Feb  4 16:35:56 kernel: 2490368 pages of RAM
> Feb  4 16:35:56 kernel: 2260992 pages of HIGHMEM
> Feb  4 16:35:56 kernel: 415332 reserved pages
> Feb  4 16:35:56 kernel: 25392 pages shared
> Feb  4 16:35:56 kernel: 0 pages swap cached
> Feb  4 16:35:56 kernel: 0 pages dirty
> Feb  4 16:35:56 kernel: 0 pages writeback
> Feb  4 16:35:56 kernel: 3787 pages mapped
> Feb  4 16:35:56 kernel: 4426 pages slab
> Feb  4 16:35:56 kernel: 360 pages pagetables
> 

Looks like quicklists again. Can you try patching your kernel with the
following patch. It should be there in the next stable release.


commit 96990a4ae979df9e235d01097d6175759331e88c
Author: Christoph Lameter <clameter@sgi.com>
Date:   Mon Jan 14 00:55:14 2008 -0800

    quicklists: Only consider memory that can be used with GFP_KERNEL
    
    Quicklists calculates the size of the quicklists based on the number of
    free pages.  This must be the number of free pages that can be allocated
    with GFP_KERNEL.  node_page_state() includes the pages in ZONE_HIGHMEM and
    ZONE_MOVABLE which may lead the quicklists to become too large causing OOM.
    
    Signed-off-by: Christoph Lameter <clameter@sgi.com>
    Tested-by: Dhaval Giani <dhaval@linux.vnet.ibm.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

diff --git a/mm/quicklist.c b/mm/quicklist.c
index ae8189c..3f703f7 100644
--- a/mm/quicklist.c
+++ b/mm/quicklist.c
@@ -26,9 +26,17 @@ DEFINE_PER_CPU(struct quicklist, quicklist)[CONFIG_NR_QUICK];
 static unsigned long max_pages(unsigned long min_pages)
 {
 	unsigned long node_free_pages, max;
+	struct zone *zones = NODE_DATA(numa_node_id())->node_zones;
+
+	node_free_pages =
+#ifdef CONFIG_ZONE_DMA
+		zone_page_state(&zones[ZONE_DMA], NR_FREE_PAGES) +
+#endif
+#ifdef CONFIG_ZONE_DMA32
+		zone_page_state(&zones[ZONE_DMA32], NR_FREE_PAGES) +
+#endif
+		zone_page_state(&zones[ZONE_NORMAL], NR_FREE_PAGES);
 
-	node_free_pages = node_page_state(numa_node_id(),
-			NR_FREE_PAGES);
 	max = node_free_pages / FRACTION_OF_NODE_MEM;
 	return max(max, min_pages);
 }

Thanks,
-- 
regards,
Dhaval

  reply	other threads:[~2008-02-05 11:08 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-05 10:04 OOM killer on idle machine Michael Bussmann
2008-02-05 11:08 ` Dhaval Giani [this message]
2008-02-05 11:41   ` Michael Bussmann
2008-02-06  8:30   ` Andrew Morton
     [not found] ` <38602.81.171.100.191.1202213194.squirrel@webmail.coolzero.info>
     [not found]   ` <20080205140216.GD12009@ruf099.fkie.fgan.de>
2008-02-05 14:09     ` Jim van Wel
  -- strict thread matches above, loose matches on Subject: below --
2008-02-05 12:07 Jim van Wel

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=20080205110818.GA8333@linux.vnet.ibm.com \
    --to=dhaval@linux.vnet.ibm.com \
    --cc=bus@mb-net.net \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.