Re: [PATCH] slab: deal with NULL pointers passed to kmem_cache_free

From: Pekka J Enberg
Date: Tue Mar 20 2007 - 03:48:06 EST


On 3/19/07, Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:
> > > This is a super-hot path.

At some point in time, I wrote:
> > Super-hot exactly where?

On Tue, 20 Mar 2007, Eric Dumazet wrote:
> Don't be silly Pekka ... We have plenty oprofiles results if you dont trust
> Andrew.

Oh, don't get me wrong, this has certainly nothing to do with "not
trusting" Andrew. It's just that "this is a super-hot path" doesn't really
help me understand where kmem_cache_free() is so performance sensitive at
all.

On Tue, 20 Mar 2007, Eric Dumazet wrote:
> CPU: AMD64 processors, speed 1992.52 MHz (estimated)
> Counted CPU_CLK_UNHALTED events (Cycles outside of halt state) with a unit
> mask of 0x00 (No unit mask) count 100000
> samples % symbol name
> 1861563 4.7882 tg3_start_xmit_dma_bug
> 1375727 3.5386 memcpy_c
> 1166438 3.0002 tcp_v4_rcv
> 1157334 2.9768 kmem_cache_free
>
> In this workload (real server), you can see kmem_cache_free() is number four.

Thanks for the profile. I still wonder where exactly thouse super-hot
call-sites are...

On Tue, 20 Mar 2007, Eric Dumazet wrote:
> Adding one test and conditional branch in this super-hot function just to
> correct a bug in a SCSI driver (or whatever) is not *SANE*.

Agreed. Unless we can get kmem_cache_free() out of those hot paths, of
course =).

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