On Fri, 01 Jul 2011 07:00:33 +0200, Jonas Bonn <jonas@xxxxxxxxxxxx> wrote: > > On Thu, 2011-06-30 at 13:02 -0700, Linus Torvalds wrote: > > On Thu, Jun 30, 2011 at 12:22 PM, Jonas Bonn <jonas@xxxxxxxxxxxx> wrote: > > > > > > The module loader code allows architectures to hook into the code by > > > providing a small number of entry points that each arch must implement. > > > This patch provides __weakly linked generic implementations of these > > > entry points for architectures that don't need to do anything special. > > > > Hmm. I know we used to have problems with gcc versions (or maybe > > binutils) that had bugs wrt "weak" functions being declared in the > > same compilation unit they were used. They would either inline the > > weak function, or bind it early, and never let the linker see the > > weak/strong functions and do the right thing. > > > > I just don't remember if we disallowed those gcc/binutils versions and > > check for it, or whether we decided that __weak function smust be > > defined in a compilation unit separate from the user. > > > > Because you now added all the weak functions to the same file > > (module.c) that actually uses them. > > There was precedent for this. The function arch_mod_section_prepend was > already defined as __weak in kernel/module.c. > > And just looking around the kernel tree, there are lots of other files > that have their weak variants in the same file as the functions that > rely on them. 'git grep __weak' turns up a whole slew of them. OK, I've applied these. Thanks, Rusty. -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html