lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Sun, 24 Jun 2018 16:51:58 -0700
From:   Randy Dunlap <rdunlap@...radead.org>
To:     Dominik Brodowski <linux@...inikbrodowski.net>,
        LKML <linux-kernel@...r.kernel.org>
Cc:     X86 ML <x86@...nel.org>
Subject: syscalls: incompatible types and aliases on i386

Hi,

I'm seeing lots of this type of warning in 4.18-rc2 (maybe even before,
but this is on x86_32/i386, so maybe people aren't checking it so much?):

In file included from ../arch/x86/kernel/process_32.c:40:
../include/linux/syscalls.h:234:18: warning: 'sys_arch_prctl' alias between functions of incompatible types 'long int(int,  long unsigned int)' and 'long int(long int,  long int)' [-Wattribute-alias]
  asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
                  ^~~
../include/linux/syscalls.h:223:2: note: in expansion of macro '__SYSCALL_DEFINEx'
  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
  ^~~~~~~~~~~~~~~~~
../include/linux/syscalls.h:213:36: note: in expansion of macro 'SYSCALL_DEFINEx'
 #define SYSCALL_DEFINE2(name, ...) SYSCALL_DEFINEx(2, _##name, __VA_ARGS__)
                                    ^~~~~~~~~~~~~~~
../arch/x86/kernel/process_32.c:310:1: note: in expansion of macro 'SYSCALL_DEFINE2'
 SYSCALL_DEFINE2(arch_prctl, int, option, unsigned long, arg2)
 ^~~~~~~~~~~~~~~
../include/linux/syscalls.h:239:18: note: aliased declaration here
  asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
                  ^~~~~~~~
../include/linux/syscalls.h:223:2: note: in expansion of macro '__SYSCALL_DEFINEx'
  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
  ^~~~~~~~~~~~~~~~~
../include/linux/syscalls.h:213:36: note: in expansion of macro 'SYSCALL_DEFINEx'
 #define SYSCALL_DEFINE2(name, ...) SYSCALL_DEFINEx(2, _##name, __VA_ARGS__)
                                    ^~~~~~~~~~~~~~~
../arch/x86/kernel/process_32.c:310:1: note: in expansion of macro 'SYSCALL_DEFINE2'
 SYSCALL_DEFINE2(arch_prctl, int, option, unsigned long, arg2)
 ^~~~~~~~~~~~~~~



I see around 300 of these.
Using:  gcc (SUSE Linux) 8.1.1 20180523 [gcc-8-branch revision 260570]

Is there a patch for this?

thanks,
-- 
~Randy

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ