On Mon, 2008-02-11 at 16:54 -0800, H. Peter Anvin wrote: > Matt Mackall wrote: > > On Mon, 2008-02-11 at 15:01 -0800, H. Peter Anvin wrote: > >> Matt Mackall wrote: > >>> Best would be to have no ifdefs and do it all with linker magic, of > >>> course. But that's trickier. > >>> > >> I concur with this, definitely. > > > > Ok, so let's come up with a plan. We can: > > > > a) use weak symbols, ala cond_syscall > > b) use a special section > > c) use early_init code (is it early enough?) > > c) have some sort of registration list > > > > Having a generic cond_call of some sort might be nice for this sort of > > thing. > > > > c) is out, because this has to be executed after the early generic code > and before the late generic code. > > b) would be my first choice, and yes, it would be a good thing to have a > generalized mechanism for this. For the registrant, it's pretty easy: > just add a macro that adds a pointer to a named section. We then need a > way to get the base address and length of each such section in order to > be able to execute each function in sequence.
I like the idea of making a generalized hook section. But this is a bit burdensome for Michael's little patch (unless you have time to whip something up) so I think we should probably explore it separately. -- Mathematics is the supreme nostalgia of our time. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/