[PATCH 08/10] tracing: Factorize lock events in a lock class

From: Frederic Weisbecker
Date: Sun May 09 2010 - 16:44:43 EST


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@xxxxxxxxx>
Cc: Ingo Molnar <mingo@xxxxxxx>
Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
Cc: Hitoshi Mitake <mitake@xxxxxxxxxxxxxxxxxxxxx>
Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
---
include/trace/events/lock.h | 48 +++++++++++++-----------------------------
1 files changed, 15 insertions(+), 33 deletions(-)

diff --git a/include/trace/events/lock.h b/include/trace/events/lock.h
index fde4c38..2821b86 100644
--- a/include/trace/events/lock.h
+++ b/include/trace/events/lock.h
@@ -35,15 +35,15 @@ TRACE_EVENT(lock_acquire,
__get_str(name))
);

-TRACE_EVENT(lock_release,
+DECLARE_EVENT_CLASS(lock,

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

TP_ARGS(lock, ip),

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

TP_fast_assign(
@@ -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
--
1.6.2.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/