OSDN Git Service

powerpc: ptrace: user_regset_copyin_ignore() always returns 0
authorSergey Shtylyov <s.shtylyov@omp.ru>
Fri, 14 Oct 2022 21:22:32 +0000 (00:22 +0300)
committerAndrew Morton <akpm@linux-foundation.org>
Tue, 15 Nov 2022 22:30:40 +0000 (14:30 -0800)
user_regset_copyin_ignore() always returns 0, so checking its result seems
pointless -- don't do this anymore...

[akpm@linux-foundation.org: fix gpr32_set_common()]
Link: https://lkml.kernel.org/r/20221014212235.10770-11-s.shtylyov@omp.ru
Signed-off-by: Sergey Shtylyov <s.shtylyov@omp.ru>
Cc: Brian Cain <bcain@quicinc.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: David S. Miller <davem@davemloft.net>
Cc: Dinh Nguyen <dinguyen@kernel.org>
Cc: Helge Deller <deller@gmx.de>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Jonas Bonn <jonas@southpole.se>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Nicholas Piggin <npiggin@gmail.com>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Rich Felker <dalias@libc.org>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Stafford Horne <shorne@gmail.com>
Cc: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: Will Deacon <will@kernel.org>
Cc: Yoshinori Sato <ysato@users.osdn.me>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
arch/powerpc/kernel/ptrace/ptrace-tm.c
arch/powerpc/kernel/ptrace/ptrace-view.c

index 4404536..210ea83 100644 (file)
@@ -170,9 +170,9 @@ int tm_cgpr_set(struct task_struct *target, const struct user_regset *regset,
                                         (PT_MAX_PUT_REG + 1) * sizeof(reg));
 
        if (PT_MAX_PUT_REG + 1 < PT_TRAP && !ret)
-               ret = user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
-                                               (PT_MAX_PUT_REG + 1) * sizeof(reg),
-                                               PT_TRAP * sizeof(reg));
+               user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
+                                         (PT_MAX_PUT_REG + 1) * sizeof(reg),
+                                         PT_TRAP * sizeof(reg));
 
        if (!ret && count > 0) {
                ret = user_regset_copyin(&pos, &count, &kbuf, &ubuf, &reg,
@@ -183,8 +183,8 @@ int tm_cgpr_set(struct task_struct *target, const struct user_regset *regset,
        }
 
        if (!ret)
-               ret = user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
-                                               (PT_TRAP + 1) * sizeof(reg), -1);
+               user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
+                                         (PT_TRAP + 1) * sizeof(reg), -1);
 
        return ret;
 }
index 076d867..2087a78 100644 (file)
@@ -267,9 +267,9 @@ static int gpr_set(struct task_struct *target, const struct user_regset *regset,
                                         (PT_MAX_PUT_REG + 1) * sizeof(reg));
 
        if (PT_MAX_PUT_REG + 1 < PT_TRAP && !ret)
-               ret = user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
-                                               (PT_MAX_PUT_REG + 1) * sizeof(reg),
-                                               PT_TRAP * sizeof(reg));
+               user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
+                                         (PT_MAX_PUT_REG + 1) * sizeof(reg),
+                                         PT_TRAP * sizeof(reg));
 
        if (!ret && count > 0) {
                ret = user_regset_copyin(&pos, &count, &kbuf, &ubuf, &reg,
@@ -280,8 +280,8 @@ static int gpr_set(struct task_struct *target, const struct user_regset *regset,
        }
 
        if (!ret)
-               ret = user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
-                                               (PT_TRAP + 1) * sizeof(reg), -1);
+               user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
+                                         (PT_TRAP + 1) * sizeof(reg), -1);
 
        return ret;
 }
@@ -706,8 +706,9 @@ int gpr32_set_common(struct task_struct *target,
        ubuf = u;
        pos *= sizeof(reg);
        count *= sizeof(reg);
-       return user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
-                                        (PT_TRAP + 1) * sizeof(reg), -1);
+       user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
+                                 (PT_TRAP + 1) * sizeof(reg), -1);
+       return 0;
 
 Efault:
        user_read_access_end();