Re: [PATCH 1/3] rbtree: Introduce rb_for_each_entry

From: Arnaldo Carvalho de Melo
Date: Wed Jan 13 2010 - 09:13:57 EST


Em Wed, Jan 13, 2010 at 02:58:53PM +0100, Peter Zijlstra escreveu:
> On Wed, 2010-01-13 at 11:52 -0200, Arnaldo Carvalho de Melo wrote:
> > Em Wed, Jan 13, 2010 at 02:34:45PM +0100, Frederic Weisbecker escreveu:
> > > At least it matches many patterns in perf :)
> >
> > What an insane piece of... software! 8-) Whatever, if it makes Peter
> > happy we can keep it on tools/perf/util/include/linux/rbtree.h, just
> > after the:
> >
> > #include "../../../../include/linux/rbtree.h"
> >
> > ;-)
> >
> > Just like we have list_del_range() in tools/perf/util/include/linux/list.h.
>
> That's not the point, doing a for_each on the rb-trees as we have today
> is a O(n log(n)) operation, not something you should want to do often.
>
> Adding a helper promotes the idea that its a sane thing to do, its not.
>
> If you really need it, open coding it isn't hard, but the lack of helper
> does make you think and hopefully realize you're doing something funny.

We need it in several places in the perf tools, to present sorted results, to
dump the maps for debugging purposes, etc.

But I'll go and look at each one of them to see if there is any where it
is used in some stupid way.

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