Re: [PATCH] s390: allow reschedule on syscall restart

From: Paul E. McKenney
Date: Tue Jan 26 2021 - 10:14:44 EST


On Tue, Jan 26, 2021 at 09:25:53PM +1100, Stephen Rothwell wrote:
> Hi all,
>
> On Tue, 26 Jan 2021 07:59:51 +0100 Christian Borntraeger <borntraeger@xxxxxxxxxx> wrote:
> >
> > On 21.01.21 15:39, Sven Schnelle wrote:
> > > Commit 845f44e8ef28 ("sched: Report local wake up on resched blind zone
> > > within idle loop") from next-20210121 causes a warning because s390
> > > doesn't call sched_resched_local_allow() when restarting a syscall.
> > >
> > > Signed-off-by: Sven Schnelle <svens@xxxxxxxxxxxxx>
> > > ---
> > > arch/s390/kernel/syscall.c | 1 +
> > > 1 file changed, 1 insertion(+)
> > >
> > > diff --git a/arch/s390/kernel/syscall.c b/arch/s390/kernel/syscall.c
> > > index bc8e650e377d..2b39ac40f970 100644
> > > --- a/arch/s390/kernel/syscall.c
> > > +++ b/arch/s390/kernel/syscall.c
> > > @@ -162,6 +162,7 @@ void noinstr __do_syscall(struct pt_regs *regs, int per_trap)
> > > do_syscall(regs);
> > > if (!test_pt_regs_flag(regs, PIF_SYSCALL_RESTART))
> > > break;
> > > + sched_resched_local_allow();
> > > local_irq_enable();
> > > }
> > > exit_to_user_mode();
> >
> > Yesterdays next now fails with
> >
> >
> > arch/s390/kernel/syscall.c: In function '__do_syscall':
> > arch/s390/kernel/syscall.c:165:3: error: implicit declaration of function 'sched_resched_local_allow' [-Werror=implicit-function-declaration]
> > 165 | sched_resched_local_allow();
> > | ^~~~~~~~~~~~~~~~~~~~~~~~~
> > cc1: some warnings being treated as errors
> > make[2]: *** [scripts/Makefile.build:288: arch/s390/kernel/syscall.o] Error 1
> > make[2]: *** Waiting for unfinished jobs....
> > make[1]: *** [scripts/Makefile.build:530: arch/s390/kernel] Error 2
> > make[1]: *** Waiting for unfinished jobs....
>
> I have now removed the merge fix up for tomorrow. It seems that the
> commits that needed it have been removed :-(

Review comments mean that they need rework, apologies for the hassle!

Thanx, Paul