Re: Major regression on hackbench with SLUB (more numbers)

Linus Torvalds
2007-12-22T21:01:35Z

On Sat, 22 Dec 2007, Theodore Tso wrote:
>
> I have a general problem with things in /sys/slab, and that's just
> because they are *ugly*. So yes, you can write ugly shell scripts
> like this to get out information:

[ script deleted ]

> But sometimes when trying to eyeball what is going on, it's a lot
> nicer just to use "cat /proc/slabinfo".

.. and I call BS on this claim.

/proc/slabinfo was (and is) totally pointless for "trying to eyeball
what's going on". The output is totally unreadable, and useless. You end
up with exactly the same script as above, except it reads as

cat /proc/slabinfo | (read headerline
while read name active num objsize objsperslab pagesperslab rest
do
realsize=$(( nul * objsize ))
size=$(( active * objsize ))
.. exact same rest of loop ..
done | sort -n | ..

so no, "cat /proc/slabinfo" was almost never practical on its own.

The *one* advantage it does have is that you can forward it to others.
That's a big advantage. But no, it wasn't ever readable for eyeballing,
because it doesn't even give you a memory usage thing (just "number of
objects and object size" as separate numbers).

But the "everything in one file" indubitably did make it a lot easier for
just attaching it to bug-reports.

> Another problem with using /sys/slab is that it is downright *ugly*.
> Why is it for example, that /sys/slab/dentry is a symlink to
> ../slab/:a-0000160?

That's the only really ugly thing there. Otherwise, it's pretty nice, but
having a million files makes for problems when trying to send somebody
else the full info.

Linus