Le 19/03/2021 à 12:06, Christophe Leroy a écrit :
Convert restore_user_regs() and restore_tm_user_regs() to use user_access_read_begin/end blocks. Signed-off-by: Christophe Leroy <[email protected]> --- arch/powerpc/include/asm/ptrace.h | 2 +- arch/powerpc/kernel/signal_32.c | 141 +++++++++++++++--------------- 2 files changed, 72 insertions(+), 71 deletions(-) diff --git a/arch/powerpc/kernel/signal_32.c b/arch/powerpc/kernel/signal_32.c index 088c83853026..0b1a6f53e553 100644 --- a/arch/powerpc/kernel/signal_32.c +++ b/arch/powerpc/kernel/signal_32.c @@ -567,19 +569,22 @@ static long restore_user_regs(struct pt_regs *regs, regs->msr &= ~MSR_SPE; if (msr & MSR_SPE) { /* restore spe registers from the stack */ - if (__copy_from_user(current->thread.evr, &sr->mc_vregs, - ELF_NEVRREG * sizeof(u32))) - return 1; + unsafe_copy_from_user(current->thread.evr, &sr->mc_vregs, + ELF_NEVRREG * sizeof(u32));
Missing the , failed); here at the end of the line. Michael can you add it ? Thanks Christophe
