All of lore.kernel.org
 help / color / mirror / Atom feed
* syscalls: incompatible types and aliases on i386
@ 2018-06-24 23:51 Randy Dunlap
  2018-06-25  2:22 ` Randy Dunlap
  0 siblings, 1 reply; 2+ messages in thread
From: Randy Dunlap @ 2018-06-24 23:51 UTC (permalink / raw)
  To: Dominik Brodowski, LKML; +Cc: X86 ML

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

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: syscalls: incompatible types and aliases on i386
  2018-06-24 23:51 syscalls: incompatible types and aliases on i386 Randy Dunlap
@ 2018-06-25  2:22 ` Randy Dunlap
  0 siblings, 0 replies; 2+ messages in thread
From: Randy Dunlap @ 2018-06-25  2:22 UTC (permalink / raw)
  To: Dominik Brodowski, LKML; +Cc: X86 ML

On 06/24/2018 04:51 PM, Randy Dunlap wrote:
> 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?

Found it.

thnx,
-- 
~Randy

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-06-25  2:22 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-24 23:51 syscalls: incompatible types and aliases on i386 Randy Dunlap
2018-06-25  2:22 ` Randy Dunlap

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.