[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <49135375.3020108@redhat.com>
Date: Thu, 06 Nov 2008 15:28:37 -0500
From: Steven Rostedt <srostedt@...hat.com>
To: Alexey Dobriyan <adobriyan@...il.com>
CC: Stephen Rothwell <sfr@...b.auug.org.au>,
linux-next@...r.kernel.org, linux-kernel@...r.kernel.org,
mingo@...hat.com
Subject: Re: next-20081106: today's ftrace episode
Alexey Dobriyan wrote:
>
>> basically all that would be needed in that file is this:
>>
>> #ifdef CONFIG_DYNAMIC_FTRACE
>> extern void ftrace_nmi_enter(void);
>> extern void ftrace_nmi_exit(void);
>> #else
>> static inline void ftrace_nmi_enter(void) { }
>> static inline void ftrace_nmi_exit(void) { }
>> #endif /* CONFIG_DYNAMIC_FTRACE */
>>
>
> Oh, this is only for that.
>
> Here is patch that allows m68k to compile, I've came up with.
>
That is quite a bit of change. I'm nervous about that because it might
break some different combinations of configs.
I'll write up a patch that does what I propose. It has a much smaller
impact.
-- Steve
> --- a/include/linux/ftrace.h
> +++ b/include/linux/ftrace.h
> @@ -1,14 +1,12 @@
> #ifndef _LINUX_FTRACE_H
> #define _LINUX_FTRACE_H
>
> +#include <linux/kallsyms.h>
> +#ifdef CONFIG_FUNCTION_TRACER
> #include <linux/linkage.h>
> -#include <linux/fs.h>
> #include <linux/ktime.h>
> #include <linux/init.h>
> #include <linux/types.h>
> -#include <linux/kallsyms.h>
> -
> -#ifdef CONFIG_FUNCTION_TRACER
>
> extern int ftrace_enabled;
> extern int
> @@ -236,7 +234,7 @@ static inline void
> ftrace_init_module(unsigned long *start, unsigned long *end) { }
> #endif
>
> -
> +#ifdef CONFIG_BOOT_TRACER
> struct boot_trace {
> pid_t caller;
> char func[KSYM_NAME_LEN];
> @@ -246,12 +244,10 @@ struct boot_trace {
> ktime_t rettime;
> };
>
> -#ifdef CONFIG_BOOT_TRACER
> extern void trace_boot(struct boot_trace *it, initcall_t fn);
> extern void start_boot_trace(void);
> extern void stop_boot_trace(void);
> #else
> -static inline void trace_boot(struct boot_trace *it, initcall_t fn) { }
> static inline void start_boot_trace(void) { }
> static inline void stop_boot_trace(void) { }
> #endif
> --- a/init/main.c
> +++ b/init/main.c
> @@ -728,6 +728,7 @@ core_param(initcall_debug, initcall_debug, bool, 0644);
>
> int do_one_initcall(initcall_t fn)
> {
> +#ifdef CONFIG_BOOT_TRACER
> int count = preempt_count();
> ktime_t delta;
> char msgbuf[64];
> @@ -768,6 +769,9 @@ int do_one_initcall(initcall_t fn)
> }
>
> return it.result;
> +#else
> + return fn();
> +#endif
> }
>
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists