Re: Testers needed for LTTng 0.6.0pre8
"Christopher Yeoh" <[email protected]>
| Newsgroups | gmane.linux.kernel.tracing |
|---|---|
| Message-ID | <[email protected]> |
Hi Mathieu, At 2006/10/1 11:19-0400 Mathieu Desnoyers writes: > > Just to make sure, do a git-pull from the git tree, the following > commit fixes a problem with probes built-in. > I did a git pull this morning (1am Tuesday GMT time). I had to patch it a little so it would build correctly without modules (I believe this is the way you're meant to do the module init stuff these days - I did check it still builds on x86 with modules) but it now builds, boots and I'm getting trace files now on a Power 5 box. The patch also includes some warning fixes and there was a missing include in one of the powerpc arch files. Regards, Chris -- [email protected] IBM OzLabs Linux Development Group, ADL Canberra, Australia diff --git a/arch/powerpc/kernel/time.c b/arch/powerpc/kernel/time.c index f87678c..35b148f 100644 --- a/arch/powerpc/kernel/time.c +++ b/arch/powerpc/kernel/time.c @@ -653,7 +653,7 @@ void timer_interrupt(struct pt_regs * re int cpu = smp_processor_id(); unsigned long ticks; - MARK(kernel_trap_entry, "%d %ld struct pt_regs %p", regs->trap, + MARK(kernel_trap_entry, "%ld %ld struct pt_regs %p", regs->trap, instruction_pointer(regs), regs); #ifdef CONFIG_PPC32 diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c index 347f554..7da5de0 100644 --- a/arch/powerpc/kernel/traps.c +++ b/arch/powerpc/kernel/traps.c @@ -175,7 +175,7 @@ void _exception(int signr, struct pt_reg return; } - MARK(kernel_trap_entry, "%d %ld struct pt_regs %p", regs->trap, + MARK(kernel_trap_entry, "%ld %ld struct pt_regs %p", regs->trap, instruction_pointer(regs), regs); memset(&info, 0, sizeof(info)); @@ -887,7 +887,7 @@ #endif void performance_monitor_exception(struct pt_regs *regs) { - MARK(kernel_trap_entry, "%d %ld struct pt_regs %p", regs->trap, + MARK(kernel_trap_entry, "%ld %ld struct pt_regs %p", regs->trap, instruction_pointer(regs), regs); perf_irq(regs); MARK(kernel_trap_exit, MARK_NOARGS); @@ -973,7 +973,7 @@ void altivec_assist_exception(struct pt_ return; } - MARK(kernel_trap_entry, "%d %ld struct pt_regs %p", regs->trap, + MARK(kernel_trap_entry, "%ld %ld struct pt_regs %p", regs->trap, instruction_pointer(regs), regs); if (err == -EFAULT) { diff --git a/fs/select.c b/fs/select.c diff --git a/include/asm-powerpc/ltt/ltt-facility-kernel_arch_powerpc.h b/include/asm-powerpc/ltt/ltt-facility-kernel_arch_powerpc.h index 8e8c290..c41ad9c 100644 --- a/include/asm-powerpc/ltt/ltt-facility-kernel_arch_powerpc.h +++ b/include/asm-powerpc/ltt/ltt-facility-kernel_arch_powerpc.h @@ -4,6 +4,7 @@ #define _LTT_FACILITY_KERNEL_ARCH_H_ #include <linux/types.h> #include <asm/ltt/ltt-facility-id-kernel_arch_powerpc.h> #include <linux/ltt-core.h> +#include <ltt/ltt-tracer.h> /* Named types */ diff --git a/ltt/probes/ltt-probe-fs.c b/ltt/probes/ltt-probe-fs.c index d152e04..302aaf0 100644 --- a/ltt/probes/ltt-probe-fs.c +++ b/ltt/probes/ltt-probe-fs.c @@ -378,7 +378,7 @@ void probe_fs_select(const char *format, va_end(ap); } -int init_module(void) +static int __init probe_init(void) { int result; result = marker_set_probe("fs_close", @@ -462,16 +462,15 @@ cleanup: return -EPERM; } -void cleanup_module(void) +static void __exit probe_fini(void) { marker_remove_probe(probe_fs_buffer_wait_start); marker_remove_probe(probe_fs_open); } -#ifndef MODULE -__initcall(init_module); -#endif +module_init(probe_init); +module_exit(probe_fini); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Mathieu Desnoyers"); diff --git a/ltt/probes/ltt-probe-ipc.c b/ltt/probes/ltt-probe-ipc.c index a2b78e8..826c550 100644 --- a/ltt/probes/ltt-probe-ipc.c +++ b/ltt/probes/ltt-probe-ipc.c @@ -71,7 +71,7 @@ void probe_ipc_shm_create(const char *fo } -int init_module(void) +static int __init probe_init(void) { int result; result = marker_set_probe("ipc_msg_create", @@ -96,7 +96,7 @@ cleanup: return -EPERM; } -void cleanup_module(void) +static void __exit probe_fini(void) { marker_remove_probe(probe_ipc_msg_create); marker_remove_probe(probe_ipc_sem_create); @@ -104,9 +104,8 @@ void cleanup_module(void) } -#ifndef MODULE -__initcall(init_module); -#endif +module_init(probe_init); +module_exit(probe_fini); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Mathieu Desnoyers"); diff --git a/ltt/probes/ltt-probe-kernel.c b/ltt/probes/ltt-probe-kernel.c index defae1b..47188ad 100644 --- a/ltt/probes/ltt-probe-kernel.c +++ b/ltt/probes/ltt-probe-kernel.c @@ -595,7 +595,7 @@ void probe_kernel_irq_exit(const char *f trace_kernel_irq_exit(); } -int init_module(void) +static int __init probe_init(void) { int result; result = marker_set_probe("kernel_thread_create", @@ -755,7 +755,7 @@ cleanup: return -EPERM; } -void cleanup_module(void) +static void __exit probe_fini(void) { marker_remove_probe(probe_kernel_thread_create); marker_remove_probe(probe_kernel_sched_try_wakeup); @@ -790,9 +790,8 @@ void cleanup_module(void) } -#ifndef MODULE -__initcall(init_module); -#endif +module_init(probe_init); +module_exit(probe_fini); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Mathieu Desnoyers"); diff --git a/ltt/probes/ltt-probe-list.c b/ltt/probes/ltt-probe-list.c index 748a7f0..4360586 100644 --- a/ltt/probes/ltt-probe-list.c +++ b/ltt/probes/ltt-probe-list.c @@ -34,7 +34,7 @@ void probe_list_modules(const char *form va_end(ap); } -int init_module(void) +static int __init probe_init(void) { int result; result = marker_set_probe("list_modules", @@ -49,15 +49,14 @@ cleanup: return -EPERM; } -void cleanup_module(void) +static void __exit probe_fini(void) { marker_remove_probe(probe_list_modules); } -#ifndef MODULE -__initcall(init_module); -#endif +module_init(probe_init); +module_exit(probe_fini); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Mathieu Desnoyers"); diff --git a/ltt/probes/ltt-probe-mm.c b/ltt/probes/ltt-probe-mm.c index 737bbac..d4d0355 100644 --- a/ltt/probes/ltt-probe-mm.c +++ b/ltt/probes/ltt-probe-mm.c @@ -119,7 +119,7 @@ void probe_mm_swap_out(const char *forma va_end(ap); } -int init_module(void) +static int __init probe_init(void) { int result; result = marker_set_probe("mm_filemap_wait_start", @@ -159,7 +159,7 @@ cleanup: return -EPERM; } -void cleanup_module(void) +static void __exit probe_fini(void) { marker_remove_probe(probe_mm_filemap_wait_start); marker_remove_probe(probe_mm_filemap_wait_end); @@ -170,9 +170,8 @@ void cleanup_module(void) } -#ifndef MODULE -__initcall(init_module); -#endif +module_init(probe_init); +module_exit(probe_fini); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Mathieu Desnoyers"); diff --git a/ltt/probes/ltt-probe-net.c b/ltt/probes/ltt-probe-net.c index 222e2a7..c50bb96 100644 --- a/ltt/probes/ltt-probe-net.c +++ b/ltt/probes/ltt-probe-net.c @@ -167,7 +167,7 @@ void probe_net_del_ifa(const char *forma -int init_module(void) +static int __init probe_init(void) { int result; result = marker_set_probe("net_socket_sendmsg", @@ -217,7 +217,7 @@ cleanup: return -EPERM; } -void cleanup_module(void) +static void __exit probe_fini(void) { marker_remove_probe(probe_net_socket_sendmsg); marker_remove_probe(probe_net_socket_recvmsg); @@ -229,10 +229,8 @@ void cleanup_module(void) marker_remove_probe(probe_net_del_ifa); } - -#ifndef MODULE -__initcall(init_module); -#endif +module_init(probe_init); +module_exit(probe_fini); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Mathieu Desnoyers");