mirror of
https://github.com/torvalds/linux.git
synced 2024-12-18 00:53:40 +00:00
5ba9ac8e2c
We want to trace the hotplug machinery. Add tracepoints to track the invocation of callbacks and their result. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: linux-arch@vger.kernel.org Cc: Rik van Riel <riel@redhat.com> Cc: Rafael Wysocki <rafael.j.wysocki@intel.com> Cc: "Srivatsa S. Bhat" <srivatsa@mit.edu> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Arjan van de Ven <arjan@linux.intel.com> Cc: Sebastian Siewior <bigeasy@linutronix.de> Cc: Rusty Russell <rusty@rustcorp.com.au> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Oleg Nesterov <oleg@redhat.com> Cc: Tejun Heo <tj@kernel.org> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Paul McKenney <paulmck@linux.vnet.ibm.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Paul Turner <pjt@google.com> Link: http://lkml.kernel.org/r/20160226182340.593563875@linutronix.de Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
67 lines
1.2 KiB
C
67 lines
1.2 KiB
C
#undef TRACE_SYSTEM
|
|
#define TRACE_SYSTEM cpuhp
|
|
|
|
#if !defined(_TRACE_CPUHP_H) || defined(TRACE_HEADER_MULTI_READ)
|
|
#define _TRACE_CPUHP_H
|
|
|
|
#include <linux/tracepoint.h>
|
|
|
|
TRACE_EVENT(cpuhp_enter,
|
|
|
|
TP_PROTO(unsigned int cpu,
|
|
int target,
|
|
int idx,
|
|
int (*fun)(unsigned int)),
|
|
|
|
TP_ARGS(cpu, target, idx, fun),
|
|
|
|
TP_STRUCT__entry(
|
|
__field( unsigned int, cpu )
|
|
__field( int, target )
|
|
__field( int, idx )
|
|
__field( void *, fun )
|
|
),
|
|
|
|
TP_fast_assign(
|
|
__entry->cpu = cpu;
|
|
__entry->target = target;
|
|
__entry->idx = idx;
|
|
__entry->fun = fun;
|
|
),
|
|
|
|
TP_printk("cpu: %04u target: %3d step: %3d (%pf)",
|
|
__entry->cpu, __entry->target, __entry->idx, __entry->fun)
|
|
);
|
|
|
|
TRACE_EVENT(cpuhp_exit,
|
|
|
|
TP_PROTO(unsigned int cpu,
|
|
int state,
|
|
int idx,
|
|
int ret),
|
|
|
|
TP_ARGS(cpu, state, idx, ret),
|
|
|
|
TP_STRUCT__entry(
|
|
__field( unsigned int, cpu )
|
|
__field( int, state )
|
|
__field( int, idx )
|
|
__field( int, ret )
|
|
),
|
|
|
|
TP_fast_assign(
|
|
__entry->cpu = cpu;
|
|
__entry->state = state;
|
|
__entry->idx = idx;
|
|
__entry->ret = ret;
|
|
),
|
|
|
|
TP_printk(" cpu: %04u state: %3d step: %3d ret: %d",
|
|
__entry->cpu, __entry->state, __entry->idx, __entry->ret)
|
|
);
|
|
|
|
#endif
|
|
|
|
/* This part must be outside protection */
|
|
#include <trace/define_trace.h>
|