Re: [PATCH] tracing/kmemtrace: normalize the raw tracer event tothe unified tracing API

From: Ingo Molnar
Date: Tue Dec 30 2008 - 03:47:43 EST



* Eduard - Gabriel Munteanu <eduard.munteanu@xxxxxxxxxxx> wrote:

> On Tue, Dec 30, 2008 at 09:16:00AM +0100, Ingo Molnar wrote:
> > 3)
> >
> > the most lowlevel (and hence most allocation-footprint sensitive) object
> > to track would be the memory object itself. I think the best approach
> > would be to do a static, limited size hash that could track up to N memory
> > objects.
> >
> > The advantage of such an approach is that it does not impact allocation
> > patterns at all (besides the one-time allocation cost of the hash itself
> > during tracer startup).
>
> kmemtrace-user handles this by analysing offline :). I presume you could
> get around this by discarding every hash collision in a well-sized
> hashtable. The hashing algo in kmemtrace-user performs okay, considering
> it fills the hashtable almost entirely, but I presume you're doing that
> in-kernel and using other available code.

yeah - this is not a replacement for kmemtrace-user - analyzing raw trace
events offline is still possible of course.

> > And this too would be driven from ftrace mainly - the SLAB code would
> > only offer the alloc+free callbacks with the object IDs. [ and this
> > means that we could detect memory leaks by looking at the hash table
> > and print out the age of entries :-) ]
>
> Some time ago I dropped timestamps because they were not providing a
> good way to reorder packets in userspace. We're currently relying on a
> sequence number to do that. You could take that as 'age', but it's not
> temporally-meaningful.

yeah - ftrace entries generally have a timestamp so it should be rather
easy.

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