Recent 3.x kernels: Memory leak causing OOMs
David Rientjes
rientjes at google.com
Sun Feb 16 17:17:44 EST 2014
On Sun, 16 Feb 2014, Russell King - ARM Linux wrote:
> Mem-info:
> Normal per-cpu:
> CPU 0: hi: 42, btch: 7 usd: 36
> active_anon:28041 inactive_anon:104 isolated_anon:0
> active_file:11 inactive_file:11 isolated_file:0
> unevictable:0 dirty:1 writeback:6 unstable:0
> free:342 slab_reclaimable:170 slab_unreclaimable:570
> mapped:13 shmem:139 pagetables:95 bounce:0
> free_cma:0
> Normal free:1368kB min:1384kB low:1728kB high:2076kB active_anon:112164kB inactive_anon:416kB active_file:44kB inactive_file:44kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:131072kB managed:120152kB mlocked:0kB dirty:4kB
> writeback:24kB mapped:52kB shmem:556kB slab_reclaimable:680kB slab_unreclaimable:2280kB kernel_stack:248kB pagetables:380kB unstable:0kB bounce:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:136 all_unreclaimable? yes
All memory is accounted for here, there appears to be no leakage.
> [ pid ] uid tgid total_vm rss nr_ptes swapents oom_score_adj name
...
> [ 756] 0 756 28163 27776 57 0 0 ld-linux.so.2
This is taking ~108MB of your ~117MB memory.
Three possibilies that immediately jump to mind:
- if this is an SMP kernel, then too much free memory is being accounted
for in cpu-0 vmstat differential and not returned to the ZVC pages
count,
- there is a too little amount of "managed" memory attributed to
ZONE_NORMAL, the ~10MB difference between "present" and "managed"
memory, or
- ld-linux.so.2 is using too much memory.
More information about the linux-arm-kernel
mailing list