diff --git a/drivers/android/vendor_hooks.c b/drivers/android/vendor_hooks.c index e4c6ce4dbbfd..6a658d5efaf1 100644 --- a/drivers/android/vendor_hooks.c +++ b/drivers/android/vendor_hooks.c @@ -94,6 +94,7 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_wakeup_ilocked); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alter_futex_plist_add); 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_rwsem_read_wait_start); diff --git a/include/trace/hooks/dtask.h b/include/trace/hooks/dtask.h index a866cdf4c97a..3a6c8b607c89 100644 --- a/include/trace/hooks/dtask.h +++ b/include/trace/hooks/dtask.h @@ -17,6 +17,9 @@ DECLARE_HOOK(android_vh_mutex_wait_start, DECLARE_HOOK(android_vh_mutex_wait_finish, TP_PROTO(struct mutex *lock), TP_ARGS(lock)); +DECLARE_HOOK(android_vh_mutex_init, + TP_PROTO(struct mutex *lock), + TP_ARGS(lock)); struct rt_mutex_base; DECLARE_HOOK(android_vh_rtmutex_wait_start, diff --git a/kernel/locking/mutex.c b/kernel/locking/mutex.c index 5d4cf4726d9b..3b9b4f206719 100644 --- a/kernel/locking/mutex.c +++ b/kernel/locking/mutex.c @@ -51,6 +51,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);