Re: Why half of slabs are not shown in /proc/slabinfo?

From: Hugh Dickins
Date: Sun Jun 21 2009 - 07:36:33 EST


On Sun, 21 Jun 2009, Andrey Borzenkov wrote:
> Mandriva kernel 2.6.30 using SLUB:
>
> {pts/1}% grep SLUB /boot/config
> CONFIG_SLUB_DEBUG=y
> CONFIG_SLUB=y
> # CONFIG_SLUB_DEBUG_ON is not set
> # CONFIG_SLUB_STATS is not set
>
> Some of slabs (e.g. filp) are not shown in /proc/slabinfo; comparing
> number of entries under /sys and slabinfo results in
>
> {pts/0}% =ls -1 /sys/kernel/slab | grep -v : | wc -l
> 131
> {pts/0}% wc -l /proc/slabinfo
> 68 /proc/slabinfo
> {pts/0}%
>
> so almost half of the all entries are missing. Is it expected or there
> is something wrong here?

With SLUB it is expected: unlike SLAB, it merges together caches
of the same size.

"slabinfo -a" (from Documentation/vm/slabinfo.c) should show you
which caches have got aliased together.

It can be quite tiresome if you're doing an investigation:
booting with "slub_nomerge" stops it behaving like that.

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