diff --git a/drivers/android/vendor_hooks.c b/drivers/android/vendor_hooks.c index 3fc7871c725c..aa00e3550da8 100644 --- a/drivers/android/vendor_hooks.c +++ b/drivers/android/vendor_hooks.c @@ -83,6 +83,7 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_wakeup_ilocked); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_do_send_sig_info); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mutex_wait_start); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mutex_wait_finish); +EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mutex_init); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rtmutex_wait_start); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rtmutex_wait_finish); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mutex_opt_spin_start); diff --git a/include/trace/hooks/dtask.h b/include/trace/hooks/dtask.h index 4220575c98f8..cbf3dfd38d36 100644 --- a/include/trace/hooks/dtask.h +++ b/include/trace/hooks/dtask.h @@ -31,6 +31,9 @@ DECLARE_HOOK(android_vh_mutex_opt_spin_finish, DECLARE_HOOK(android_vh_mutex_can_spin_on_owner, TP_PROTO(struct mutex *lock, int *retval), TP_ARGS(lock, retval)); +DECLARE_HOOK(android_vh_mutex_init, + TP_PROTO(struct mutex *lock), + TP_ARGS(lock)); DECLARE_HOOK(android_vh_rtmutex_wait_start, TP_PROTO(struct rt_mutex_base *lock), diff --git a/kernel/locking/mutex.c b/kernel/locking/mutex.c index 44b6ff75d31d..e2952e345bb1 100644 --- a/kernel/locking/mutex.c +++ b/kernel/locking/mutex.c @@ -55,6 +55,7 @@ __mutex_init(struct mutex *lock, const char *name, struct lock_class_key *key) osq_lock_init(&lock->osq); #endif + trace_android_vh_mutex_init(lock); debug_mutex_init(lock, name, key); } EXPORT_SYMBOL(__mutex_init);