Re: [PATCH v2] ftrace: warn on failure to disable mcount callers

From: Steven Rostedt
Date: Fri Aug 22 2008 - 09:00:52 EST




On Fri, 22 Aug 2008, Ingo Molnar wrote:

>
> * Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
>
> > + WARN_ON_ONCE(1);
> > + pr_info("ftrace faulted on modifying ");
> > + print_ip_sym(ip);
> > + break;
> > + case 2:
> > + WARN_ON_ONCE(1);
> > + pr_info("ftrace failed to modify ");
> > + print_ip_sym(ip);
> > + print_ip_ins(" expected: ", call);
> > + print_ip_ins(" actual: ", (unsigned char *)ip);
> > + print_ip_ins(" replace: ", nop);
> > + printk(KERN_CONT "\n");
> > + break;
>
> hm, i think it makes little sense to only print out the stacktrace once,
> but to print out the rest all the time.

Actually, the more functions that are printed the easier it is to find
where things went wrong. The backtrace is only to trigger automated tools,
and helps very little in diagnosing the problem.

I had to examine several functions to figure out the issue with the weak
symbols.

>
> If there's such a failure then ftrace should warn once, with stacktrace
> and everthing else, and turn itself off permanently. That makes it sure
> that we 1) get the report 2) dont spam the user 3) keep the system
> working 4) turn off the malfunctioning component.

The backtrace should give us 1 without a problem. In fact if we do 2,
they are more likely to complain ;-)

I think 3 and 4 are related, and I agree, if this is detected, we turn
ftrace off.

Note, this only prints out on boot up and module loading. The spamming
should not be that bad.

-- Steve

--
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/