[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <499EE865.40708@oracle.com>
Date: Fri, 20 Feb 2009 09:29:09 -0800
From: Randy Dunlap <randy.dunlap@...cle.com>
To: Ingo Molnar <mingo@...e.hu>
CC: Frederic Weisbecker <fweisbec@...il.com>,
Steven Rostedt <rostedt@...dmis.org>,
linux-kernel@...r.kernel.org, zippel@...ux-m68k.org,
linux-kbuild@...r.kernel.org
Subject: Re: [PATCH] tracing/markers: make markers select tracepoints
Ingo Molnar wrote:
> * Randy Dunlap <randy.dunlap@...cle.com> wrote:
>
>>> This is what happens on the following build error:
>>>
>>> kernel/built-in.o: In function `marker_update_probe_range':
>>> (.text+0x52f64): undefined reference to `tracepoint_probe_register_noupdate'
>>> kernel/built-in.o: In function `marker_update_probe_range':
>>> (.text+0x52f74): undefined reference to `tracepoint_probe_unregister_noupdate'
>>> kernel/built-in.o: In function `marker_update_probe_range':
>>> (.text+0x52fb9): undefined reference to `tracepoint_probe_unregister_noupdate'
>>> kernel/built-in.o: In function `marker_update_probes':
>>> marker.c:(.text+0x530ba): undefined reference to `tracepoint_probe_update_all'
>>>
>>> CONFIG_KVM_TRACE will select CONFIG_MARKER, but the latter
>>> depends on CONFIG_TRACEPOINTS which will not be selected.
>>>
>>> A temporary fix is to make CONFIG_MARKER select
>>> CONFIG_TRACEPOINTS, though it doesn't fix the source KConfig
>>> dependency handling problem.
>>>
>>> Reported-by: Ingo Molnar <mingo@...e.hu>
>>> Cc: Roman Zippel <zippel@...ux-m68k.org>
>>> Signed-off-by: Frederic Weisbecker <fweisbec@...il.com>
>>> ---
>>> init/Kconfig | 2 +-
>>> 1 files changed, 1 insertions(+), 1 deletions(-)
>>>
>>> diff --git a/init/Kconfig b/init/Kconfig
>>> index b6400a5..a93f957 100644
>>> --- a/init/Kconfig
>>> +++ b/init/Kconfig
>>> @@ -975,7 +975,7 @@ config TRACEPOINTS
>>>
>>> config MARKERS
>>> bool "Activate markers"
>>> - depends on TRACEPOINTS
>>> + select TRACEPOINTS
>>> help
>>> Place an empty function call at each marker site. Can be
>>> dynamically changed for a probe function.
>> but using "select" instead of "depends on" just causes the
>> kind of problem that you described, whereas using "depends on"
>> does follow dependency chains.
>
> Well, as long as the secondary selects are 'expanded' along the
> line of dependencies, it should still be fine. With an
Agreed.
> increasing number of dependencies it quickly becomes ugly
> though. This might be one of the cases where it works.
Agreed.
> Eventually we should eliminate markers, their uses can either be
> converted to new-style tracepoints, or to ftrace_printk().
Thanks,
--
~Randy
--
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