Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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: Frederic 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>

+16 -34
+16 -34
include/trace/events/lock.h
··· 35 35 __get_str(name)) 36 36 ); 37 37 38 - TRACE_EVENT(lock_release, 38 + DECLARE_EVENT_CLASS(lock, 39 39 40 40 TP_PROTO(struct lockdep_map *lock, unsigned long ip), 41 41 42 42 TP_ARGS(lock, ip), 43 43 44 44 TP_STRUCT__entry( 45 - __string(name, lock->name) 46 - __field(void *, lockdep_addr) 45 + __string( name, lock->name ) 46 + __field( void *, lockdep_addr ) 47 47 ), 48 48 49 49 TP_fast_assign( ··· 51 51 __entry->lockdep_addr = lock; 52 52 ), 53 53 54 - TP_printk("%p %s", 55 - __entry->lockdep_addr, __get_str(name)) 54 + TP_printk("%p %s", __entry->lockdep_addr, __get_str(name)) 55 + ); 56 + 57 + DEFINE_EVENT(lock, lock_release, 58 + 59 + TP_PROTO(struct lockdep_map *lock, unsigned long ip), 60 + 61 + TP_ARGS(lock, ip) 56 62 ); 57 63 58 64 #ifdef CONFIG_LOCK_STAT 59 65 60 - TRACE_EVENT(lock_contended, 66 + DEFINE_EVENT(lock, lock_contended, 61 67 62 68 TP_PROTO(struct lockdep_map *lock, unsigned long ip), 63 69 64 - TP_ARGS(lock, ip), 65 - 66 - TP_STRUCT__entry( 67 - __string(name, lock->name) 68 - __field(void *, lockdep_addr) 69 - ), 70 - 71 - TP_fast_assign( 72 - __assign_str(name, lock->name); 73 - __entry->lockdep_addr = lock; 74 - ), 75 - 76 - TP_printk("%p %s", 77 - __entry->lockdep_addr, __get_str(name)) 70 + TP_ARGS(lock, ip) 78 71 ); 79 72 80 - TRACE_EVENT(lock_acquired, 73 + DEFINE_EVENT(lock, lock_acquired, 74 + 81 75 TP_PROTO(struct lockdep_map *lock, unsigned long ip), 82 76 83 - TP_ARGS(lock, ip), 84 - 85 - TP_STRUCT__entry( 86 - __string(name, lock->name) 87 - __field(void *, lockdep_addr) 88 - ), 89 - 90 - TP_fast_assign( 91 - __assign_str(name, lock->name); 92 - __entry->lockdep_addr = lock; 93 - ), 94 - TP_printk("%p %s", __entry->lockdep_addr, 95 - __get_str(name)) 77 + TP_ARGS(lock, ip) 96 78 ); 97 79 98 80 #endif