summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2025-11-11 09:18:11 -1000
committerTejun Heo <tj@kernel.org>2025-11-12 06:43:44 -1000
commit7ed8df0d15022fcc092e7c7f0bd82359476cff3c (patch)
treecaa834d78a30cee765c87aa7ac053c7fc08174aa /kernel
parent4ba54a6cbd4ddde805b769b4be04623a2ce1668c (diff)
sched_ext: Make handle_lockup() propagate scx_verror() result
handle_lockup() currently calls scx_verror() but ignores its return value, always returning true when the scheduler is enabled. Make it capture and return the result from scx_verror(). This prepares for hardlockup handling. Cc: Dan Schatzberg <schatzberg.dan@gmail.com> Cc: Emil Tsalapatis <etsal@meta.com> Reviewed-by: Andrea Righi <arighi@nvidia.com> Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/sched/ext.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/sched/ext.c b/kernel/sched/ext.c
index ad5d3902e99d..85bb052459ec 100644
--- a/kernel/sched/ext.c
+++ b/kernel/sched/ext.c
@@ -3659,6 +3659,7 @@ static __printf(1, 2) bool handle_lockup(const char *fmt, ...)
{
struct scx_sched *sch;
va_list args;
+ bool ret;
guard(rcu)();
@@ -3670,9 +3671,9 @@ static __printf(1, 2) bool handle_lockup(const char *fmt, ...)
case SCX_ENABLING:
case SCX_ENABLED:
va_start(args, fmt);
- scx_verror(sch, fmt, args);
+ ret = scx_verror(sch, fmt, args);
va_end(args);
- return true;
+ return ret;
default:
return false;
}