Re: [PATCH 3/5] Show kernel stack usage to /proc/meminfo and OOM log

From: KOSAKI Motohiro
Date: Wed Jul 08 2009 - 22:13:43 EST


> On Sun, 5 Jul 2009, KOSAKI Motohiro wrote:
>
> > Subject: [PATCH] Show kernel stack usage to /proc/meminfo and OOM log
> >
> > if the system have a lot of thread, kernel stack consume unignorable large size
> > memory. IOW, it make a lot of unaccountable memory.
> > Tons unaccountable memory bring to harder analyse memory related trouble.
> >
> > Then, kernel stack account is useful.
>
> The amount of memory allocated to kernel stacks can become significant and
> cause OOM conditions. However, we do not display the amount of memory
> consumed by stacks.'
>
> Add code to display the amount of memory used for stacks in /proc/meminfo.
>
> Reviewed-by: <cl@xxxxxxxxxxxxxxxxxxxx>

Thanks.
I'll fix the description.


> (It may be useful to also include the stack sizes in the per zone
> information displayed when an OOM occurs).

following code in this patch mean display per-zone stack size, no?



> Index: b/mm/page_alloc.c
> ===================================================================
> --- a/mm/page_alloc.c
> +++ b/mm/page_alloc.c
> @@ -2158,6 +2158,7 @@ void show_free_areas(void)
> " mapped:%lukB"
> " slab_reclaimable:%lukB"
> " slab_unreclaimable:%lukB"
> + " kernel_stack:%lukB"
> " pagetables:%lukB"
> " unstable:%lukB"
> " bounce:%lukB"
> @@ -2182,6 +2183,8 @@ void show_free_areas(void)
> K(zone_page_state(zone, NR_FILE_MAPPED)),
> K(zone_page_state(zone, NR_SLAB_RECLAIMABLE)),
> K(zone_page_state(zone, NR_SLAB_UNRECLAIMABLE)),
> + zone_page_state(zone, NR_KERNEL_STACK) *
> + THREAD_SIZE / 1024,
> K(zone_page_state(zone, NR_PAGETABLE)),
> K(zone_page_state(zone, NR_UNSTABLE_NFS)),
> K(zone_page_state(zone, NR_BOUNCE)),

--
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/