[+cc linux-mips] On Wed, Oct 15, 2014 at 11:06 AM, Bjorn Helgaas <bhelgaas@xxxxxxxxxx> wrote: > When the "weak" attribute is on a declaration in a header file, every > definition where the header is included becomes weak, and the linker > chooses one definition based on link order (see 10629d711ed7 ("PCI: Remove > __weak annotation from pcibios_get_phb_of_node decl")). > > Move the "weak" attribute from the declaration to the default definition so > we always prefer a non-weak definition over the weak one, independent of > link order. > > Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> > CC: linux-mips@xxxxxxxxxxxxxx > --- > arch/mips/include/asm/vpe.h | 2 +- > arch/mips/kernel/vpe-mt.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/mips/include/asm/vpe.h b/arch/mips/include/asm/vpe.h > index 7849f3978fea..80e70dbd1f64 100644 > --- a/arch/mips/include/asm/vpe.h > +++ b/arch/mips/include/asm/vpe.h > @@ -122,7 +122,7 @@ void release_vpe(struct vpe *v); > void *alloc_progmem(unsigned long len); > void release_progmem(void *ptr); > > -int __weak vpe_run(struct vpe *v); > +int vpe_run(struct vpe *v); > void cleanup_tc(struct tc *tc); > > int __init vpe_module_init(void); > diff --git a/arch/mips/kernel/vpe-mt.c b/arch/mips/kernel/vpe-mt.c > index 2e003b11a098..0e5899a2cd96 100644 > --- a/arch/mips/kernel/vpe-mt.c > +++ b/arch/mips/kernel/vpe-mt.c > @@ -23,7 +23,7 @@ static int major; > static int hw_tcs, hw_vpes; > > /* We are prepared so configure and start the VPE... */ > -int vpe_run(struct vpe *v) > +int __weak vpe_run(struct vpe *v) > { > unsigned long flags, val, dmt_flag; > struct vpe_notifications *notifier; >