[tip:tracing/core] tracing: make the trace clocks available generally

From: tip-bot for Ingo Molnar
Date: Thu May 07 2009 - 05:32:00 EST


Commit-ID: 56449f437add737a1e5e1cb7e00f63ac8ead1938
Gitweb: http://git.kernel.org/tip/56449f437add737a1e5e1cb7e00f63ac8ead1938
Author: Ingo Molnar <mingo@xxxxxxx>
AuthorDate: Tue, 14 Apr 2009 11:24:36 +0200
Committer: Ingo Molnar <mingo@xxxxxxx>
CommitDate: Tue, 14 Apr 2009 18:35:13 +0200

tracing: make the trace clocks available generally

Jeremy Fitzhardinge reported this build failure:

LD .tmp_vmlinux1
arch/x86/kernel/built-in.o: In function `ds_take_timestamp':
git/linux/arch/x86/kernel/ds.c:1380: undefined reference to `trace_clock_global'
git/linux/arch/x86/kernel/ds.c:1380: undefined reference to `trace_clock_global'

Which is due to !CONFIG_TRACING && CONFIG_X86_DS=y.

Expose the trace clock code to CONFIG_X86_DS as well.

[ Unfortunately librarizing doesnt work well - ancient architectures
with no raw_local_irq_save() primitive break the build. ]

Reported-by: Jeremy Fitzhardinge <jeremy@xxxxxxxx>
LKML-Reference: <49E4413F.7070700@xxxxxxxx>
Signed-off-by: Ingo Molnar <mingo@xxxxxxx>


---
kernel/Makefile | 1 +
kernel/trace/Makefile | 7 ++++++-
2 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/kernel/Makefile b/kernel/Makefile
index bab1dff..c8e1be5 100644
--- a/kernel/Makefile
+++ b/kernel/Makefile
@@ -92,6 +92,7 @@ obj-$(CONFIG_LATENCYTOP) += latencytop.o
obj-$(CONFIG_HAVE_GENERIC_DMA_COHERENT) += dma-coherent.o
obj-$(CONFIG_FUNCTION_TRACER) += trace/
obj-$(CONFIG_TRACING) += trace/
+obj-$(CONFIG_X86_DS) += trace/
obj-$(CONFIG_SMP) += sched_cpupri.o
obj-$(CONFIG_SLOW_WORK) += slow-work.o

diff --git a/kernel/trace/Makefile b/kernel/trace/Makefile
index 2630f51..ecc671e 100644
--- a/kernel/trace/Makefile
+++ b/kernel/trace/Makefile
@@ -15,11 +15,16 @@ ifdef CONFIG_TRACING_BRANCHES
KBUILD_CFLAGS += -DDISABLE_BRANCH_PROFILING
endif

+#
+# Make the trace clocks available generally: it's infrastructure
+# relied on by ptrace for example:
+#
+obj-y += trace_clock.o
+
obj-$(CONFIG_FUNCTION_TRACER) += libftrace.o
obj-$(CONFIG_RING_BUFFER) += ring_buffer.o

obj-$(CONFIG_TRACING) += trace.o
-obj-$(CONFIG_TRACING) += trace_clock.o
obj-$(CONFIG_TRACING) += trace_output.o
obj-$(CONFIG_TRACING) += trace_stat.o
obj-$(CONFIG_TRACING) += trace_printk.o
--
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/