diff --git a/drivers/android/vendor_hooks.c b/drivers/android/vendor_hooks.c index 2cff702df817..b8fab55cbc16 100644 --- a/drivers/android/vendor_hooks.c +++ b/drivers/android/vendor_hooks.c @@ -331,3 +331,5 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sha256); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_aes_expandkey); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_aes_encrypt); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_aes_decrypt); +EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_force_compatible_pre); +EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_force_compatible_post); diff --git a/include/trace/hooks/sched.h b/include/trace/hooks/sched.h index 622454f6f8c8..8c2fdd2f76c6 100644 --- a/include/trace/hooks/sched.h +++ b/include/trace/hooks/sched.h @@ -378,6 +378,13 @@ DECLARE_HOOK(android_vh_force_compatible_post, TP_PROTO(void *unused), TP_ARGS(unused)); +DECLARE_RESTRICTED_HOOK(android_rvh_force_compatible_pre, + TP_PROTO(void *unused), + TP_ARGS(unused), 1); + +DECLARE_RESTRICTED_HOOK(android_rvh_force_compatible_post, + TP_PROTO(void *unused), + TP_ARGS(unused), 1); /* macro versions of hooks are no longer required */ #endif /* _TRACE_HOOK_SCHED_H */ diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 332cfe2e5415..64288d005bb4 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -2106,6 +2106,7 @@ void force_compatible_cpus_allowed_ptr(struct task_struct *p) * lock to ensure that the migration succeeds. */ trace_android_vh_force_compatible_pre(NULL); + trace_android_rvh_force_compatible_pre(NULL); cpus_read_lock(); if (!cpumask_available(new_mask)) goto out_set_mask; @@ -2131,6 +2132,7 @@ out_set_mask: out_free_mask: cpus_read_unlock(); trace_android_vh_force_compatible_post(NULL); + trace_android_rvh_force_compatible_post(NULL); free_cpumask_var(new_mask); }