On Fri, Sep 21, 2012 at 9:51 AM, Russell King <[email protected]> wrote: > On Fri, Sep 21, 2012 at 08:58:00AM -0700, Kees Cook wrote: >> Add finit_module syscall to the ARM syscall list. >> >> Signed-off-by: Kees Cook <[email protected]> >> Cc: Russell King <[email protected]> >> --- >> arch/arm/include/asm/unistd.h | 1 + >> arch/arm/kernel/calls.S | 1 + >> 2 files changed, 2 insertions(+), 0 deletions(-) >> >> diff --git a/arch/arm/include/asm/unistd.h b/arch/arm/include/asm/unistd.h >> index 0cab47d..904b579 100644 >> --- a/arch/arm/include/asm/unistd.h >> +++ b/arch/arm/include/asm/unistd.h >> @@ -404,6 +404,7 @@ >> #define __NR_setns (__NR_SYSCALL_BASE+375) >> #define __NR_process_vm_readv (__NR_SYSCALL_BASE+376) >> #define __NR_process_vm_writev (__NR_SYSCALL_BASE+377) >> +#define __NR_finit_module (__NR_SYSCALL_BASE+378) > > This gives us a different syscall ordering if we add the kcmp syscall. > > That brings up another question though - when was kcmp added to x86, and > why aren't we getting notifications from checksyscalls.sh that ARM hasn't > been updated? > > It seems to be that the script was broken, and no one has noticed. > > commit 29dc54c673ea2531d589400badb4ada5f5f60dae > Author: H. Peter Anvin <[email protected]> > Date: Fri Nov 11 15:57:53 2011 -0800 > > checksyscalls: Use arch/x86/syscalls/syscall_32.tbl as source > > Use the new arch/x86/syscalls/syscall_32.tbl file as source instead of > arch/x86/include/asm/unistd_32.h. > > Cc: Michal Marek <[email protected]> > Cc: Geert Uytterhoeven <[email protected]> > Cc: Sam Ravnborg <[email protected]> > Signed-off-by: H. Peter Anvin <[email protected]> > > is the culpret, more specifically this fragment: > > + echo <<EOF > +#if !defined(__NR_${name}) && !defined(__IGNORE_${name}) > +#warning syscall ${name} not implemented > +#endif > +EOF > > "echo <<EOF" doesn't read from its stdin and output to stdout, so the > above just generates a blank line for each entry in x86's syscalls_32.tbl, > resulting in the compiler doing no checking for us. > > That "echo <<EOF" should be "cat <<EOF"... and with that fixed we get: > > <stdin>:1220:2: warning: #warning syscall kcmp not implemented > > So, actually, I want to add this kcmp syscall _now_ into -rc which I'm > afraid will break your patch, and bump your syscall number on ARM to 379.
That's fine by me. I'll adjust my patch series. Thanks! -Kees -- Kees Cook Chrome OS Security -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

