Re: oom-killings, but I'm not out of memory!
From: Roy Keene
Date: Sun Jul 03 2005 - 22:56:30 EST
Howdy,
Roy Keene
Planning Systems Inc.
On Sun, 3 Jul 2005, Marcelo Tosatti wrote:
Hi Roy,
On Sun, Jul 03, 2005 at 09:44:37PM -0500, Roy Keene wrote:
I think I'm having the same issue.
I've 2 systems with 4GB of RAM and 2GB of swap that kill processes when
they get a lot of disk I/O. I've attached the full dmesg output which
includes portions where it killed stuff despite having massive amounts of
free memory.
What kernel version is that?
Linux cog2 2.6.9-11.ELsmp #1 SMP Fri May 20 18:26:27 EDT 2005 i686 i686 i386 GNU/Linux
oom-killer: gfp_mask=0xd0
Mem-info:
DMA per-cpu:
cpu 0 hot: low 2, high 6, batch 1
cpu 0 cold: low 0, high 2, batch 1
cpu 1 hot: low 2, high 6, batch 1
cpu 1 cold: low 0, high 2, batch 1
cpu 2 hot: low 2, high 6, batch 1
cpu 2 cold: low 0, high 2, batch 1
cpu 3 hot: low 2, high 6, batch 1
cpu 3 cold: low 0, high 2, batch 1
Normal per-cpu:
cpu 0 hot: low 32, high 96, batch 16
cpu 0 cold: low 0, high 32, batch 16
cpu 1 hot: low 32, high 96, batch 16
cpu 1 cold: low 0, high 32, batch 16
cpu 2 hot: low 32, high 96, batch 16
cpu 2 cold: low 0, high 32, batch 16
cpu 3 hot: low 32, high 96, batch 16
cpu 3 cold: low 0, high 32, batch 16
HighMem per-cpu:
cpu 0 hot: low 32, high 96, batch 16
cpu 0 cold: low 0, high 32, batch 16
cpu 1 hot: low 32, high 96, batch 16
cpu 1 cold: low 0, high 32, batch 16
cpu 2 hot: low 32, high 96, batch 16
cpu 2 cold: low 0, high 32, batch 16
cpu 3 hot: low 32, high 96, batch 16
cpu 3 cold: low 0, high 32, batch 16
Free pages: 14304kB (1664kB HighMem)
Active:7971 inactive:994335 dirty:327523 writeback:25721 unstable:0 free:3576 slab:29113 mapped:7996 pagetables:341
There are about 100M of writeout data onflight - I suppose thats too much.
Guess: can you switch to another IO scheduler than CFQ or reduce its queue size?
IIRC you can do that by reducing /sys/block/device/queue/nr_requests.
For all the devices I use this is set to 8192
I set "sda" to 512 now.
[root@cog2 ~]# cat /sys/block/{sda,nbd0,nbd1}/queue/nr_requests
8192
8192
8192
DMA free:12640kB min:16kB low:32kB high:48kB active:0kB inactive:0kB present:16384kB pages_scanned:877 all_unreclaimable? yes
protections[]: 0 0 0
Normal free:0kB min:928kB low:1856kB high:2784kB active:0kB inactive:739100kB present:901120kB pages_scanned:1556742 all_unreclaimable? yes
protections[]: 0 0 0
You've got no reservations for the normal zone either.
How does /proc/sys/vm/lowmem_reserve_ratio looks like?
It looks like it doesn't exist..
[root@cog2 ~]# ls /proc/sys/vm
block_dump dirty_ratio laptop_mode
max_map_count nr_pdflush_threads page-cluster
dirty_background_ratio dirty_writeback_centisecs legacy_va_layout
min_free_kbytes overcommit_memory swappiness
dirty_expire_centisecs hugetlb_shm_group lower_zone_protection
nr_hugepages overcommit_ratio vfs_cache_pressure
[root@cog2 ~]#
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/