sched_mm_cid_after_execve() is called from the failure path of bprm_execve(). At that point exec has not completed successfully, so updating the mm CID state is incorrect and can trigger a panic, as reported by syzbot.
Remove the call from the exec failure path.
Cc: stable@vger.kernel.org Reported-by: syzbot+9ca2c6e6b098bf5ae60a@syzkaller.appspotmail.com Signed-off-by: Jinchao Wang wangjinchao600@gmail.com --- fs/exec.c | 1 - 1 file changed, 1 deletion(-)
diff --git a/fs/exec.c b/fs/exec.c index 9d5ebc9d15b0..9044a75d26ab 100644 --- a/fs/exec.c +++ b/fs/exec.c @@ -1773,7 +1773,6 @@ static int bprm_execve(struct linux_binprm *bprm) if (bprm->point_of_no_return && !fatal_signal_pending(current)) force_fatal_sig(SIGSEGV);
- sched_mm_cid_after_execve(current); rseq_force_update(); current->in_execve = 0;
linux-stable-mirror@lists.linaro.org