Messages in this thread | | | From | Bjorn Helgaas <> | Date | Wed, 15 Oct 2014 17:35:05 -0600 | Subject | Re: [PATCH v1 08/10] kgdb: Remove "weak" from kgdb_arch_pc() declaration |
| |
[+cc Harvey, Vineet, linux-sh; arc, sh, and x86 have kgdb_arch_pc() definitions and could see issues from this]
On Wed, Oct 15, 2014 at 11:06 AM, Bjorn Helgaas <bhelgaas@google.com> wrote: > kernel/debug/debug_core.c provides a default kgdb_arch_pc() definition > explicitly marked "weak". Several architectures provide their own > definitions intended to override the default, but the "weak" attribute on > the declaration applied to the arch definitions as well, so the linker > chose one based on link order (see 10629d711ed7 ("PCI: Remove __weak > annotation from pcibios_get_phb_of_node decl")). > > Remove the "weak" attribute from the declaration so we always prefer a > non-weak definition over the weak one, independent of link order. > > Fixes: 688b744d8bc8 ("kgdb: fix signedness mixmatches, add statics, add declaration to header") > Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> > CC: Harvey Harrison <harvey.harrison@gmail.com> > --- > include/linux/kgdb.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/include/linux/kgdb.h b/include/linux/kgdb.h > index 6b06d378f3df..e465bb15912d 100644 > --- a/include/linux/kgdb.h > +++ b/include/linux/kgdb.h > @@ -283,7 +283,7 @@ struct kgdb_io { > > extern struct kgdb_arch arch_kgdb_ops; > > -extern unsigned long __weak kgdb_arch_pc(int exception, struct pt_regs *regs); > +extern unsigned long kgdb_arch_pc(int exception, struct pt_regs *regs); > > #ifdef CONFIG_SERIAL_KGDB_NMI > extern int kgdb_register_nmi_console(void); >
| |