linux/arch/s390/kernel
Josh Stone 9741987586 tracing: Move tracepoint callbacks from declaration to definition
It's not strictly correct for the tracepoint reg/unreg callbacks to
occur when a client is hooking up, because the actual tracepoint may not
be present yet.  This happens to be fine for syscall, since that's in
the core kernel, but it would cause problems for tracepoints defined in
a module that hasn't been loaded yet.  It also means the reg/unreg has
to be EXPORTed for any modules to use the tracepoint (as in SystemTap).

This patch removes DECLARE_TRACE_WITH_CALLBACK, and instead introduces
DEFINE_TRACE_FN which stores the callbacks in struct tracepoint.  The
callbacks are used now when the active state of the tracepoint changes
in set_tracepoint & disable_tracepoint.

This also introduces TRACE_EVENT_FN, so ftrace events can also provide
registration callbacks if needed.

Signed-off-by: Josh Stone <jistone@redhat.com>
Cc: Jason Baron <jbaron@redhat.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Li Zefan <lizf@cn.fujitsu.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Cc: Jiaying Zhang <jiayingz@google.com>
Cc: Martin Bligh <mbligh@google.com>
Cc: Lai Jiangshan <laijs@cn.fujitsu.com>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
LKML-Reference: <1251150194-1713-4-git-send-email-jistone@redhat.com>
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
2009-08-26 00:36:41 +02:00
..
vdso32 [S390] gettimeofday.S: removed duplicated #includes 2009-01-09 12:15:04 +01:00
vdso64 [S390] vdso: clock_gettime of CLOCK_THREAD_CPUTIME_ID with noexec=on 2009-07-24 12:41:02 +02:00
asm-offsets.c [S390] cpu hotplug and accounting values 2009-04-14 15:37:27 +02:00
audit.c
audit.h
base.S
bitmap.c [S390] move EXPORT_SYMBOLs to definitions 2009-03-26 15:24:11 +01:00
compat_audit.c
compat_exec_domain.c
compat_linux.c ptrace: remove PT_DTRACE from avr32, mn10300, parisc, s390, sh, xtensa 2009-06-18 13:03:48 -07:00
compat_linux.h compat: generic compat get/settimeofday 2008-10-16 11:21:33 -07:00
compat_ptrace.h [S390] Expose a constant for the number of words representing the CRs 2009-03-26 15:24:25 +01:00
compat_signal.c [S390] fix system call parameter functions. 2008-11-27 11:06:56 +01:00
compat_wrapper.S [S390] wire up sys_perf_counter_open 2009-06-12 10:27:40 +02:00
cpcmd.c [S390] convert cpcmd printks to pr_xxx macros. 2008-12-25 13:39:19 +01:00
crash.c
debug.c [S390] s390dbf: Remove needless check for NULL pointer. 2009-03-26 15:24:29 +01:00
diag.c
dis.c headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
early.c [S390] kernel: Storing machine flags early in lowcore 2009-08-07 10:40:39 +02:00
ebcdic.c
entry64.S tracing: Rename FTRACE_SYSCALLS for tracepoints 2009-08-26 00:17:35 +02:00
entry.h [CVE-2009-0029] s390 specific system call wrappers 2009-01-14 14:15:32 +01:00
entry.S tracing: Rename FTRACE_SYSCALLS for tracepoints 2009-08-26 00:17:35 +02:00
ftrace.c function-graph: add stack frame test 2009-06-18 18:40:18 -04:00
head31.S [S390] eliminate ipl_device from lowcore 2009-03-26 15:24:27 +01:00
head64.S [S390] eliminate ipl_device from lowcore 2009-03-26 15:24:27 +01:00
head.S Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2009-06-14 13:46:25 -07:00
init_task.c mm: consolidate init_mm definition 2009-06-16 19:47:28 -07:00
ipl.c [S390] shutdown actions: save/return rc from init function 2009-07-07 16:37:52 +02:00
irq.c [S390] Fix init irq proc build break. 2009-02-11 10:37:39 +01:00
kprobes.c [S390] kprobes: defer setting of ctlblk state 2009-06-22 12:08:24 +02:00
machine_kexec.c
Makefile [S390] ftrace: add function graph tracer support 2009-06-12 10:27:39 +02:00
mcount.S [S390] ftrace: add function graph tracer support 2009-06-12 10:27:39 +02:00
mem_detect.c [S390] s390: hibernation support for s390 2009-06-16 10:31:22 +02:00
module.c module: cleanup FIXME comments about trimming exception table entries. 2009-06-12 21:47:05 +09:30
nmi.c [S390] merge cpu.h into cputime.h 2009-06-12 10:27:29 +02:00
process.c ptrace: remove PT_DTRACE from avr32, mn10300, parisc, s390, sh, xtensa 2009-06-18 13:03:48 -07:00
processor.c [S390] Add hwcap flag for the etf3 enhancement facility 2009-03-26 15:24:32 +01:00
ptrace.c tracing: Move tracepoint callbacks from declaration to definition 2009-08-26 00:36:41 +02:00
reipl64.S [S390] fix clock comparator save area usage 2009-03-26 15:24:32 +01:00
reipl.S
relocate_kernel64.S
relocate_kernel.S
s390_ext.c [S390] ftrace: add function graph tracer support 2009-06-12 10:27:39 +02:00
s390_ksyms.c [S390] move EXPORT_SYMBOLs to definitions 2009-03-26 15:24:11 +01:00
sclp.S [S390] add mini sclp driver 2009-06-12 10:27:30 +02:00
setup.c [S390] ftrace: add dynamic ftrace support 2009-06-12 10:27:38 +02:00
signal.c [S390] implement is_compat_task 2009-06-12 10:27:30 +02:00
smp.c [S390] vdso: fix per cpu area allocation 2009-07-24 12:41:01 +02:00
stacktrace.c
sys_s390.c [CVE-2009-0029] s390 specific system call wrappers 2009-01-14 14:15:32 +01:00
syscalls.S [S390] wire up sys_perf_counter_open 2009-06-12 10:27:40 +02:00
sysinfo.c [S390] move sysinfo.c from drivers/s390 to arch/s390/kernel 2009-03-26 15:24:06 +01:00
time.c [S390] time: convert from bootmem to slab 2009-06-22 12:08:16 +02:00
topology.c [S390] cpumask: remove cpu_coregroup_map 2009-03-26 15:24:32 +01:00
traps.c [S390] fix dump_stack vs. %p and (null) 2009-03-26 15:24:02 +01:00
vdso.c [S390] implement is_compat_task 2009-06-12 10:27:30 +02:00
vmlinux.lds.S [S390] ftrace: add function graph tracer support 2009-06-12 10:27:39 +02:00
vtime.c [S390] lockless idle time accounting 2009-06-22 12:08:23 +02:00