On 13/07/15 00:11, Bjorn Helgaas wrote: > Weak header file declarations are error-prone because they make every > definition weak, and the linker chooses one based on link order (see > 10629d711ed7 ("PCI: Remove __weak annotation from pcibios_get_phb_of_node > decl")). > > platform_maar_init() is defined in: > > - arch/mips/mm/init.c (where it is marked "weak") > - arch/mips/mti-malta/malta-memory.c (without annotation) > > The "weak" attribute on the platform_maar_init() extern declaration applies > to the platform-specific definition in arch/mips/mti-malta/malta-memory.c, > so both definitions are weak, and which one we get depends on link order. > > Remove the "weak" attribute from the declaration. That makes the malta > definition strong, so it will always be preferred if it is present. > > Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> > CC: linux-mips@xxxxxxxxxxxxxx Reviewed-by: James Hogan <james.hogan@xxxxxxxxxx> Cheers James > --- > arch/mips/include/asm/maar.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/mips/include/asm/maar.h b/arch/mips/include/asm/maar.h > index 6c62b0f..b02891f 100644 > --- a/arch/mips/include/asm/maar.h > +++ b/arch/mips/include/asm/maar.h > @@ -26,7 +26,7 @@ > * > * Return: The number of MAAR pairs configured. > */ > -unsigned __weak platform_maar_init(unsigned num_pairs); > +unsigned platform_maar_init(unsigned num_pairs); > > /** > * write_maar_pair() - write to a pair of MAARs >
Attachment:
signature.asc
Description: OpenPGP digital signature