Messages in this thread | | | Date | Fri, 11 Jun 2021 12:32:34 +1000 | From | Nicholas Piggin <> | Subject | Re: [PATCH v2 3/4] powerpc/interrupt: Rename and lightly change syscall_exit_prepare_main() |
| |
Excerpts from Christophe Leroy's message of June 5, 2021 12:56 am: > Rename syscall_exit_prepare_main() into interrupt_exit_prepare_main() > > Make it static as it is not used anywhere else. > > Pass it the 'ret' so that it can 'or' it directly instead of > oring twice, once inside the function and once outside. > > And remove 'r3' parameter which is not used. > > Also fix a typo where CONFIG_PPC_BOOK3S should be CONFIG_PPC_BOOK3S_64.
This all looks good I think. I need to grab this fix from your series.
Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
> > Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> > --- > arch/powerpc/kernel/interrupt.c | 11 +++++------ > 1 file changed, 5 insertions(+), 6 deletions(-) > > diff --git a/arch/powerpc/kernel/interrupt.c b/arch/powerpc/kernel/interrupt.c > index b6aa80930733..bc3c1892ed80 100644 > --- a/arch/powerpc/kernel/interrupt.c > +++ b/arch/powerpc/kernel/interrupt.c > @@ -228,11 +228,10 @@ static notrace void booke_load_dbcr0(void) > #endif > } > > -notrace unsigned long syscall_exit_prepare_main(unsigned long r3, > - struct pt_regs *regs) > +static notrace unsigned long > +interrupt_exit_user_prepare_main(struct pt_regs *regs, unsigned long ret) > { > unsigned long ti_flags; > - unsigned long ret = 0; > > again: > ti_flags = READ_ONCE(current_thread_info()->flags); > @@ -254,7 +253,7 @@ notrace unsigned long syscall_exit_prepare_main(unsigned long r3, > ti_flags = READ_ONCE(current_thread_info()->flags); > } > > - if (IS_ENABLED(CONFIG_PPC_BOOK3S) && IS_ENABLED(CONFIG_PPC_FPU)) { > + if (IS_ENABLED(CONFIG_PPC_BOOK3S_64) && IS_ENABLED(CONFIG_PPC_FPU)) { > if (IS_ENABLED(CONFIG_PPC_TRANSACTIONAL_MEM) && > unlikely((ti_flags & _TIF_RESTORE_TM))) { > restore_tm_state(regs); > @@ -350,7 +349,7 @@ notrace unsigned long syscall_exit_prepare(unsigned long r3, > } > > local_irq_disable(); > - ret |= syscall_exit_prepare_main(r3, regs); > + ret = interrupt_exit_user_prepare_main(regs, ret); > > #ifdef CONFIG_PPC64 > regs->exit_result = ret; > @@ -378,7 +377,7 @@ notrace unsigned long syscall_exit_restart(unsigned long r3, struct pt_regs *reg > > BUG_ON(!user_mode(regs)); > > - regs->exit_result |= syscall_exit_prepare_main(r3, regs); > + regs->exit_result = interrupt_exit_user_prepare_main(regs, regs->exit_result); > > return regs->exit_result; > } > -- > 2.25.0 > >
| |