Message ID | 20160709090632.GA2598@lst.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Sat, 9 Jul 2016 11:06:32 +0200 Torsten Duwe <duwe@lst.de> wrote: > Maybe the code in question can be replaced with the change below, now that > there is a preprocessor define in V2? > (untested) > > diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c > index 3f743b1..695a646 100644 > --- a/kernel/trace/ftrace.c > +++ b/kernel/trace/ftrace.c > @@ -2423,6 +2423,12 @@ ftrace_code_disable(struct module *mod, struct dyn_ftrace *rec) > if (unlikely(ftrace_disabled)) > return 0; > > +#ifdef CC_USING_PROLOG_PAD > + /* If the compiler already generated NOPs instead of > + * calls to mcount, we're done here. > + */ > + return 1; > +#endif I really hate adding #ifdef's like this in generic code if the arch can handle it with some other means. -- Steve > ret = ftrace_make_nop(mod, rec, MCOUNT_ADDR); > if (ret) { > ftrace_bug(ret, rec);
diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c index 3f743b1..695a646 100644 --- a/kernel/trace/ftrace.c +++ b/kernel/trace/ftrace.c @@ -2423,6 +2423,12 @@ ftrace_code_disable(struct module *mod, struct dyn_ftrace *rec) if (unlikely(ftrace_disabled)) return 0; +#ifdef CC_USING_PROLOG_PAD + /* If the compiler already generated NOPs instead of + * calls to mcount, we're done here. + */ + return 1; +#endif ret = ftrace_make_nop(mod, rec, MCOUNT_ADDR); if (ret) { ftrace_bug(ret, rec);