From 5cfe879a2a8cf46edc391ba74906eec5c85510cc Mon Sep 17 00:00:00 2001 From: Shaleen Agrawal Date: Fri, 8 Jan 2021 12:52:41 -0800 Subject: [PATCH] ANDROID: sched: Add export symbols for sched features Export symbols needed to implement vendor scheduler value-adds to modify sched features dynamically at runtime, such as disabling TTWU_QUEUE. Bug: 177050087 Change-Id: Ibe14d2019403be68b7ceeee47425b2473ccb51fe Signed-off-by: Shaleen Agrawal --- kernel/sched/core.c | 1 + kernel/sched/debug.c | 3 ++- kernel/sched/sched.h | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 7ef3fd97b0df..4b3c81cb3794 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -62,6 +62,7 @@ EXPORT_SYMBOL_GPL(runqueues); const_debug unsigned int sysctl_sched_features = #include "features.h" 0; +EXPORT_SYMBOL_GPL(sysctl_sched_features); #undef SCHED_FEAT /* diff --git a/kernel/sched/debug.c b/kernel/sched/debug.c index 9d6d4a62c027..98fe5720260b 100644 --- a/kernel/sched/debug.c +++ b/kernel/sched/debug.c @@ -48,9 +48,10 @@ static unsigned long nsec_low(unsigned long long nsec) #define SCHED_FEAT(name, enabled) \ #name , -static const char * const sched_feat_names[] = { +const char * const sched_feat_names[] = { #include "features.h" }; +EXPORT_SYMBOL_GPL(sched_feat_names); #undef SCHED_FEAT diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index f6b2a5e1f143..e005255566ff 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h @@ -1985,6 +1985,8 @@ static __always_inline bool static_branch_##name(struct static_key *key) \ #undef SCHED_FEAT extern struct static_key sched_feat_keys[__SCHED_FEAT_NR]; +extern const char * const sched_feat_names[__SCHED_FEAT_NR]; + #define sched_feat(x) (static_branch_##x(&sched_feat_keys[__SCHED_FEAT_##x])) #else /* !CONFIG_JUMP_LABEL */