Message ID | 20220725062512.118602-1-rmclure@linux.ibm.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | powerpc: Syscall wrapper and register clearing | expand |
On Mon, 2022-07-25 at 16:25 +1000, Rohan McLure wrote: > Syscall handlers should not be invoked internally by their symbol > names, > as these symbols defined by the architecture-defined SYSCALL_DEFINE > macro. Fortunately, in the case of ppc64_personality, its call to > sys_personality can be replaced with an invocation to the > equivalent ksys_personality inline helper in <linux/syscalls.h>. > > Signed-off-by: Rohan McLure <rmclure@linux.ibm.com> Reviewed-by: Andrew Donnellan <ajd@linux.ibm.com> > --- > V1 -> V2: Use inline helper to deduplicate bodies in compat/regular > implementations. > --- > arch/powerpc/kernel/syscalls.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/powerpc/kernel/syscalls.c > b/arch/powerpc/kernel/syscalls.c > index ca20083dd0ae..22755502afc0 100644 > --- a/arch/powerpc/kernel/syscalls.c > +++ b/arch/powerpc/kernel/syscalls.c > @@ -89,7 +89,7 @@ static inline long do_ppc64_personality(unsigned > long personality) > if (personality(current->personality) == PER_LINUX32 > && personality(personality) == PER_LINUX) > personality = (personality & ~PER_MASK) | > PER_LINUX32; > - ret = sys_personality(personality); > + ret = ksys_personality(personality); > if (personality(ret) == PER_LINUX32) > ret = (ret & ~PER_MASK) | PER_LINUX; > return ret;
diff --git a/arch/powerpc/kernel/syscalls.c b/arch/powerpc/kernel/syscalls.c index ca20083dd0ae..22755502afc0 100644 --- a/arch/powerpc/kernel/syscalls.c +++ b/arch/powerpc/kernel/syscalls.c @@ -89,7 +89,7 @@ static inline long do_ppc64_personality(unsigned long personality) if (personality(current->personality) == PER_LINUX32 && personality(personality) == PER_LINUX) personality = (personality & ~PER_MASK) | PER_LINUX32; - ret = sys_personality(personality); + ret = ksys_personality(personality); if (personality(ret) == PER_LINUX32) ret = (ret & ~PER_MASK) | PER_LINUX; return ret;
Syscall handlers should not be invoked internally by their symbol names, as these symbols defined by the architecture-defined SYSCALL_DEFINE macro. Fortunately, in the case of ppc64_personality, its call to sys_personality can be replaced with an invocation to the equivalent ksys_personality inline helper in <linux/syscalls.h>. Signed-off-by: Rohan McLure <rmclure@linux.ibm.com> --- V1 -> V2: Use inline helper to deduplicate bodies in compat/regular implementations. --- arch/powerpc/kernel/syscalls.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)