Messages in this thread | | | Date | Wed, 18 Jun 2008 11:57:11 +0200 | From | Ingo Molnar <> | Subject | Re: [PATCH] modules: Take a shortcut for checking if an address is in a module |
| |
* Vegard Nossum <vegard.nossum@gmail.com> wrote:
> > > > Various pieces of the kernel (lockdep, latencytop, etc) tend to > > > > store backtraces, sometimes at a relatively high frequency. In > > > > itself this isn't a big performance deal (after all you're > > > > using diagnostics features), but there have been some > > > > complaints from people who have over 100 modules loaded that > > > > this is a tad too slow. > > Would it be overkill to simply drop the module addresses in an rbtree > and use that instead of a linear search over all the modules? > > It would probably take a fair number of lines in C, and with a little > memory overhead, but the speed-up should be great. Should I give it a > try? (It would be arch-independent too.)
that's a tempting idea. rbtrees seem to be equally robust to plain lists in my experience, so i'd not find the extra complexity a showstopper, as long as the changes are well-tested. (radix trees on the other hand ... ;-)
Rusty, Peter, Linus, any fundamental objections to Vegard's idea? Being able to take a transparent stack-trace signature for debugging or instrumentation purposes is important and performance does matter there IMO.
Ingo
| |