Re: [RFC][PATCH 0/3] ftrace: Add dynamically allocated trampolines

From: Namhyung Kim
Date: Mon Jul 14 2014 - 10:18:59 EST


2014-07-14 (ì), 17:18 +0900, Masami Hiramatsu:
> (2014/07/14 16:16), Namhyung Kim wrote:
> > Hi Masami,
> >
> > On Mon, 14 Jul 2014 10:35:21 +0900, Masami Hiramatsu wrote:
> >> (2014/07/11 23:29), Josh Poimboeuf wrote:
> >>> Here's the same stack trace with this patch:
> >>>
> >>> [ 1314.612287] [<ffffffff81700312>] dump_stack+0x45/0x56
> >>> [ 1314.612290] [<ffffffff8125f5b0>] ? meminfo_proc_open+0x30/0x30
> >>> [ 1314.612293] [<ffffffffa080a494>] kpatch_ftrace_handler+0x14/0xf0 [kpatch]
> >>> [ 1314.612306] [<ffffffffa00160c4>] 0xffffffffa00160c3
> >>
> >> Here, this still has a wrong entry. Maybe the trampline doesn't setup
> >> frame pointer (bp) correctly.
> >
> > Hmm.. are you saying about the hex address above? I guess it's a valid
> > entry in the (dynamic) trampoline, but has no symbol..
>
> Ah, indeed. (BTW, why is it one less than the address ...? printk's spec?)

Argh, it seems like a bug in printk's %pB format processing.. :-/

It subtract 1 from the address for stacktrace. Please see the commit
0f77a8d37825 ("vsprintf: Introduce %pB format specifier") and
71f9e59800e5 ("x86, dumpstack: Use %pB format specifier for stack
trace") for details. But it should restore the original address when it
failed to find a symbol for that address.

I'll send a fix soon.

Thanks,
Namhyung


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/