Re: [PATCH] Show slab memory usage on OOM and SysRq-M (v3)

From: Andrew Morton
Date: Fri Apr 20 2007 - 01:10:30 EST


On Wed, 18 Apr 2007 11:13:01 +0400 Pavel Emelianov <xemul@xxxxx> wrote:

> The out_of_memory() function and SysRq-M handler call
> show_mem() to show the current memory usage state.
>
> This is also helpful to see which slabs are the largest
> in the system.
>
> Thanks Pekka for good idea of how to make it better.
>
> The nr_pages is stored on kmem_list3 because:
>
> 1. as Eric pointed out, we do not want to defeat
> NUMA optimizations;
> 2. we do not need for additional LOCK-ed operation on
> altering this field - l3->list_lock is already taken
> where needed.
>
> Made naming more descriptive according to Dave.
>
> Signed-off-by: Pavel Emelianov <xemul@xxxxxxxxxx>
> Signed-off-by: Kirill Korotaev <dev@xxxxxxxxxx>
> Acked-by: Pekka Enberg <penberg@xxxxxxxxxxxxxx>
> Cc: Eric Dumazet <dada1@xxxxxxxxxxxxx>
> Cc: Dave Hansen <hansendc@xxxxxxxxxx>
>

This is rather a lot of new code and even new locking.

Any time we actually need this what-the-heck-is-happening-in-slab info, the
reporter is able to work out the problem via /proc/slabinfo. Either by
taking a look in there before the system dies completely, or by looking in
there after the oom-killing.
-
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/