Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2c193c73 authored by Frederic Weisbecker's avatar Frederic Weisbecker
Browse files

tracing: Factorize lock events in a lock class



lock_acquired, lock_contended and lock_release now share the
same prototype and format. Let's factorize them into a lock
event class.

Signed-off-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Hitoshi Mitake <mitake@dcl.info.waseda.ac.jp>
Cc: Steven Rostedt <rostedt@goodmis.org>
parent 93135439
Loading
Loading
Loading
Loading
+15 −33
Original line number Diff line number Diff line
@@ -35,7 +35,7 @@ TRACE_EVENT(lock_acquire,
		  __get_str(name))
);

TRACE_EVENT(lock_release,
DECLARE_EVENT_CLASS(lock,

	TP_PROTO(struct lockdep_map *lock, unsigned long ip),

@@ -51,48 +51,30 @@ TRACE_EVENT(lock_release,
		__entry->lockdep_addr = lock;
	),

	TP_printk("%p %s",
		  __entry->lockdep_addr, __get_str(name))
	TP_printk("%p %s",  __entry->lockdep_addr, __get_str(name))
);

#ifdef CONFIG_LOCK_STAT

TRACE_EVENT(lock_contended,
DEFINE_EVENT(lock, lock_release,

	TP_PROTO(struct lockdep_map *lock, unsigned long ip),

	TP_ARGS(lock, ip),

	TP_STRUCT__entry(
		__string(name, lock->name)
		__field(void *, lockdep_addr)
	),
	TP_ARGS(lock, ip)
);

	TP_fast_assign(
		__assign_str(name, lock->name);
		__entry->lockdep_addr = lock;
	),
#ifdef CONFIG_LOCK_STAT

	TP_printk("%p %s",
		  __entry->lockdep_addr, __get_str(name))
);
DEFINE_EVENT(lock, lock_contended,

TRACE_EVENT(lock_acquired,
	TP_PROTO(struct lockdep_map *lock, unsigned long ip),

	TP_ARGS(lock, ip),
	TP_ARGS(lock, ip)
);

	TP_STRUCT__entry(
		__string(name, lock->name)
		__field(void *, lockdep_addr)
	),
DEFINE_EVENT(lock, lock_acquired,

	TP_fast_assign(
		__assign_str(name, lock->name);
		__entry->lockdep_addr = lock;
	),
	TP_printk("%p %s", __entry->lockdep_addr,
		  __get_str(name))
	TP_PROTO(struct lockdep_map *lock, unsigned long ip),

	TP_ARGS(lock, ip)
);

#endif