ANDROID: cgroup: Add vendor hook for rebuild_root_domains_bypass

Vendor could decide to bypass this function.

Bug: 238390134
Change-Id: Ia6bc71c7569d21da9ae226e5d8739f97b9ca1a4f
Signed-off-by: Rick Yiu <rickyiu@google.com>
This commit is contained in:
Rick Yiu
2022-09-22 07:18:33 +00:00
committed by Matthias Männich
parent 8015dd49c0
commit ab9c52146f
3 changed files with 11 additions and 0 deletions

View File

@@ -409,3 +409,4 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mmput);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_early_resume_begin);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alloc_pages_reclaim_bypass);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alloc_pages_failure_bypass);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rebuild_root_domains_bypass);

View File

@@ -392,6 +392,10 @@ DECLARE_HOOK(android_vh_pidfd_open,
DECLARE_HOOK(android_vh_mmput,
TP_PROTO(void *unused),
TP_ARGS(unused));
DECLARE_HOOK(android_vh_rebuild_root_domains_bypass,
TP_PROTO(bool cpuhp_tasks_frozen, bool *bypass),
TP_ARGS(cpuhp_tasks_frozen, bypass));
/* macro versions of hooks are no longer required */
#endif /* _TRACE_HOOK_SCHED_H */

View File

@@ -941,6 +941,12 @@ static void rebuild_root_domains(void)
{
struct cpuset *cs = NULL;
struct cgroup_subsys_state *pos_css;
bool bypass = false;
trace_android_vh_rebuild_root_domains_bypass(cpuhp_tasks_frozen, &bypass);
if (bypass)
return;
lockdep_assert_held(&cpuset_mutex);
lockdep_assert_cpus_held();