[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID:
<BL1PR15MB531422F04E2C750D2979FD22C7D7A@BL1PR15MB5314.namprd15.prod.outlook.com>
Date: Wed, 19 Nov 2025 15:41:32 +0000
From: Emil Tsalapatis <etsal@...a.com>
To: Saket Kumar Bhaskar <skb99@...ux.ibm.com>,
"sched-ext@...ts.linux.dev"
<sched-ext@...ts.linux.dev>,
"linux-kernel@...r.kernel.org"
<linux-kernel@...r.kernel.org>
CC: "hbathini@...ux.ibm.com" <hbathini@...ux.ibm.com>,
"samir@...ux.ibm.com"
<samir@...ux.ibm.com>,
"sachinpb@...ux.ibm.com" <sachinpb@...ux.ibm.com>,
"tj@...nel.org" <tj@...nel.org>,
"void@...ifault.com" <void@...ifault.com>,
"arighi@...dia.com" <arighi@...dia.com>,
"changwoo@...lia.com"
<changwoo@...lia.com>,
"mingo@...hat.com" <mingo@...hat.com>,
"peterz@...radead.org" <peterz@...radead.org>,
"juri.lelli@...hat.com"
<juri.lelli@...hat.com>,
"vincent.guittot@...aro.org"
<vincent.guittot@...aro.org>,
"dietmar.eggemann@....com"
<dietmar.eggemann@....com>,
"rostedt@...dmis.org" <rostedt@...dmis.org>,
"bsegall@...gle.com" <bsegall@...gle.com>,
"mgorman@...e.de"
<mgorman@...e.de>,
"vschneid@...hat.com" <vschneid@...hat.com>
Subject: Re: [PATCH] sched_ext: Fix scx_enable() crash on helper kthread
creation failure
________________________________________
From: Saket Kumar Bhaskar <skb99@...ux.ibm.com>
Sent: Wednesday, November 19, 2025 5:37 AM
To: sched-ext@...ts.linux.dev; linux-kernel@...r.kernel.org
Cc: hbathini@...ux.ibm.com; samir@...ux.ibm.com; sachinpb@...ux.ibm.com; tj@...nel.org; void@...ifault.com; arighi@...dia.com; changwoo@...lia.com; mingo@...hat.com; peterz@...radead.org; juri.lelli@...hat.com; vincent.guittot@...aro.org; dietmar.eggemann@....com; rostedt@...dmis.org; bsegall@...gle.com; mgorman@...e.de; vschneid@...hat.com
Subject: [PATCH] sched_ext: Fix scx_enable() crash on helper kthread creation failure
A crash was observed when the sched_ext selftests runner was
terminated with Ctrl+\ while test 15 was running:
NIP [c00000000028fa58] scx_enable.constprop.0+0x358/0x12b0
LR [c00000000028fa2c] scx_enable.constprop.0+0x32c/0x12b0
Call Trace:
scx_enable.constprop.0+0x32c/0x12b0 (unreliable)
bpf_struct_ops_link_create+0x18c/0x22c
__sys_bpf+0x23f8/0x3044
sys_bpf+0x2c/0x6c
system_call_exception+0x124/0x320
system_call_vectored_common+0x15c/0x2ec
kthread_run_worker() returns an ERR_PTR() on failure rather than NULL,
but the current code in scx_alloc_and_add_sched() only checks for a NULL
helper. Incase of failure on SIGQUIT, the error is not handled in
scx_alloc_and_add_sched() and scx_enable() ends up dereferencing an
error pointer.
Error handling is fixed in scx_alloc_and_add_sched() to propagate
PTR_ERR() into ret, so that scx_enable() jumps to the existing error
path, avoiding random dereference on failure.
Fixes: bff3b5aec1b7 ("sched_ext: Move disable machinery into scx_sched")
Reported-by: Samir Mulani <samir@...ux.ibm.com>
Signed-off-by: Saket Kumar Bhaskar <skb99@...ux.ibm.com>
---
kernel/sched/ext.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
Reviewed-by: Emil Tsalapatis <emil@...alapatis.com>
Powered by blists - more mailing lists