Re: [PATCH] modules: add default loader hook implementations

From: Rusty Russell
Date: Mon Jun 27 2011 - 05:12:01 EST


On Sat, 25 Jun 2011 15:08:49 +0200, Arnd Bergmann <arnd@xxxxxxxx> wrote:
> On Saturday 25 June 2011, Jonas Bonn wrote:
> > On Sat, 2011-06-25 at 12:04 +0200, Ingo Molnar wrote:
> > > Also, and more importantly, don't we generally do such things via
> > > __weak aliases, because the result looks cleaner and needs no changes
> > > for architectures beyond the removal of the generic functions? We
> > > have excluded broken toolchains that miscompile/mislink __weak IIRC
> > > so __weak ought to work.
> >
> > When we discussed this briefly yesterday, both Rusty and Arnd showed a
> > preference for not using __weak aliases... I'll leave it to them to
> > comment further.
> >
> > The alternative patch that just provides __weak implementations for
> > these hooks is much less invasive than the patch I sent, effectively
> > touching only kernel/module.c
> >
> > Let me know which is preferable.
>
> I don't care much either way, you would get my Ack for both solutions.
> The __weak approach would definitely make a simpler patch, and the
> patch you sent adds extra complexity because of the
> asm_generic_moduleloader_hooks macro you used to avoid having to
> change all other architectures.

I think you misread me. If all else is equal, I dislike weak functions.
But AFAICT the two standard mechanisms are #ifdef HAVE_ARCH and __weak.
Inventing a third one is not going to be a win.

And given where we are, __weak seems the easier path than HAVE_ARCH.
A followup patch to toss out the now-unneeded empty arch functions would
be nice, too.

Thanks,
Rusty.
--
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/