On Thu, Oct 16, 2014 at 1:22 AM, Martin Schwidefsky <schwidefsky@xxxxxxxxxx> wrote: > On Wed, 15 Oct 2014 17:30:33 -0600 > Bjorn Helgaas <bhelgaas@xxxxxxxxxx> wrote: > >> [+cc Daniel, Martin, linux-s390; sorry, I botched my "stg mail" so you >> weren't included the first time. s390 could see issues from this.] >> >> On Wed, Oct 15, 2014 at 11:06 AM, Bjorn Helgaas <bhelgaas@xxxxxxxxxx> wrote: >> > kernel/time/jiffies.c provides a default clocksource_default_clock() >> > definition explicitly marked "weak". arch/s390 provides its own definition >> > intended to override the default, but the "weak" attribute on the >> > declaration applied to the s390 definition 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 clocksource_default_clock() >> > declaration so we always prefer a non-weak definition over the weak one, >> > independent of link order. >> > >> > Fixes: f1b82746c1e9 ("clocksource: Cleanup clocksource selection") >> > Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> >> > CC: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx> >> > CC: Martin Schwidefsky <schwidefsky@xxxxxxxxxx> >> > --- >> > include/linux/clocksource.h | 2 +- >> > 1 file changed, 1 insertion(+), 1 deletion(-) >> > >> > diff --git a/include/linux/clocksource.h b/include/linux/clocksource.h >> > index 653f0e2b6ca9..abcafaa20b86 100644 >> > --- a/include/linux/clocksource.h >> > +++ b/include/linux/clocksource.h >> > @@ -287,7 +287,7 @@ extern struct clocksource* clocksource_get_next(void); >> > extern void clocksource_change_rating(struct clocksource *cs, int rating); >> > extern void clocksource_suspend(void); >> > extern void clocksource_resume(void); >> > -extern struct clocksource * __init __weak clocksource_default_clock(void); >> > +extern struct clocksource * __init clocksource_default_clock(void); >> > extern void clocksource_mark_unstable(struct clocksource *cs); >> > >> > extern u64 >> > > > s390 compiles and boots without the __weak for clocksource_default_clock. I assume this means you've tested this patch and s390 compiles and boots? I assume you *don't* mean that s390 could drop its clocksource_default_clock() implementation and use the generic one, right? Bjorn -- To unsubscribe from this list: send the line "unsubscribe linux-s390" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html