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 for Android: free password hash cracker in your pocket
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <201805301236.G39TXHn7%fengguang.wu@intel.com>
Date:   Wed, 30 May 2018 12:49:39 +0800
From:   kbuild test robot <lkp@...el.com>
To:     Al Viro <viro@...iv.linux.org.uk>
Cc:     kbuild-all@...org, linux-kernel@...r.kernel.org
Subject: include/linux/syscalls.h:211:18: error: 'sys_sparc_remap_file_pages'
 alias between functions of incompatible types 'long int(long unsigned int,
  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned
 int)' and 'long int(long int,  long int,  long int,  long int,  long int)'

Hi Al,

FYI, the error/warning still remains.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   0044cdeb731313f20b63cb5644de7588731de32b
commit: a0d32ad366bb4235267380b341fcae8307f51044 switch sparc_remap_file_pages() to SYSCALL_DEFINE
date:   2 months ago
config: sparc-defconfig (attached as .config)
compiler: sparc-linux-gcc (GCC) 8.1.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout a0d32ad366bb4235267380b341fcae8307f51044
        # save the attached .config to linux build tree
        make.cross ARCH=sparc 

All errors (new ones prefixed by >>):

   In file included from arch/sparc/kernel/sys_sparc_32.c:21:
   include/linux/syscalls.h:211:18: error: 'sys_mmap2' alias between functions of incompatible types 'long int(long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)' and 'long int(long int,  long int,  long int,  long int,  long int,  long int)' [-Werror=attribute-alias]
     asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:201:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE6(name, ...) SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc/kernel/sys_sparc_32.c:101:1: note: in expansion of macro 'SYSCALL_DEFINE6'
    SYSCALL_DEFINE6(mmap2, unsigned long, addr, unsigned long, len,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:215:18: note: aliased declaration here
     asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:201:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE6(name, ...) SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc/kernel/sys_sparc_32.c:101:1: note: in expansion of macro 'SYSCALL_DEFINE6'
    SYSCALL_DEFINE6(mmap2, unsigned long, addr, unsigned long, len,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:211:18: error: 'sys_getdomainname' alias between functions of incompatible types 'long int(char *, int)' and 'long int(long int,  long int)' [-Werror=attribute-alias]
     asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:197:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE2(name, ...) SYSCALL_DEFINEx(2, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc/kernel/sys_sparc_32.c:205:1: note: in expansion of macro 'SYSCALL_DEFINE2'
    SYSCALL_DEFINE2(getdomainname, char __user *, name, int, len)
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:215:18: note: aliased declaration here
     asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:197:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE2(name, ...) SYSCALL_DEFINEx(2, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc/kernel/sys_sparc_32.c:205:1: note: in expansion of macro 'SYSCALL_DEFINE2'
    SYSCALL_DEFINE2(getdomainname, char __user *, name, int, len)
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:211:18: error: 'sys_rt_sigaction' alias between functions of incompatible types 'long int(int,  const struct sigaction *, struct sigaction *, void *, size_t)' {aka 'long int(int,  const struct sigaction *, struct sigaction *, void *, unsigned int)'} and 'long int(long int,  long int,  long int,  long int,  long int)' [-Werror=attribute-alias]
     asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:200:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc/kernel/sys_sparc_32.c:176:1: note: in expansion of macro 'SYSCALL_DEFINE5'
    SYSCALL_DEFINE5(rt_sigaction, int, sig,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:215:18: note: aliased declaration here
     asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:200:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc/kernel/sys_sparc_32.c:176:1: note: in expansion of macro 'SYSCALL_DEFINE5'
    SYSCALL_DEFINE5(rt_sigaction, int, sig,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:211:18: error: 'sys_sparc_sigaction' alias between functions of incompatible types 'long int(int,  struct old_sigaction *, struct old_sigaction *)' and 'long int(long int,  long int,  long int)' [-Werror=attribute-alias]
     asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:198:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc/kernel/sys_sparc_32.c:168:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    SYSCALL_DEFINE3(sparc_sigaction, int, sig,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:215:18: note: aliased declaration here
     asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:198:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc/kernel/sys_sparc_32.c:168:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    SYSCALL_DEFINE3(sparc_sigaction, int, sig,
    ^~~~~~~~~~~~~~~
>> include/linux/syscalls.h:211:18: error: 'sys_sparc_remap_file_pages' alias between functions of incompatible types 'long int(long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)' and 'long int(long int,  long int,  long int,  long int,  long int)' [-Werror=attribute-alias]
     asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:200:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc/kernel/sys_sparc_32.c:119:1: note: in expansion of macro 'SYSCALL_DEFINE5'
    SYSCALL_DEFINE5(sparc_remap_file_pages, unsigned long, start, unsigned long, size,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:215:18: note: aliased declaration here
     asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:200:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc/kernel/sys_sparc_32.c:119:1: note: in expansion of macro 'SYSCALL_DEFINE5'
    SYSCALL_DEFINE5(sparc_remap_file_pages, unsigned long, start, unsigned long, size,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:211:18: error: 'sys_mmap' alias between functions of incompatible types 'long int(long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)' and 'long int(long int,  long int,  long int,  long int,  long int,  long int)' [-Werror=attribute-alias]
     asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:201:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE6(name, ...) SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc/kernel/sys_sparc_32.c:111:1: note: in expansion of macro 'SYSCALL_DEFINE6'
    SYSCALL_DEFINE6(mmap, unsigned long, addr, unsigned long, len,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:215:18: note: aliased declaration here
     asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:201:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE6(name, ...) SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc/kernel/sys_sparc_32.c:111:1: note: in expansion of macro 'SYSCALL_DEFINE6'
    SYSCALL_DEFINE6(mmap, unsigned long, addr, unsigned long, len,
    ^~~~~~~~~~~~~~~
   cc1: all warnings being treated as errors
--
   In file included from arch/sparc//kernel/sys_sparc_32.c:21:
   include/linux/syscalls.h:211:18: error: 'sys_mmap2' alias between functions of incompatible types 'long int(long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)' and 'long int(long int,  long int,  long int,  long int,  long int,  long int)' [-Werror=attribute-alias]
     asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:201:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE6(name, ...) SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc//kernel/sys_sparc_32.c:101:1: note: in expansion of macro 'SYSCALL_DEFINE6'
    SYSCALL_DEFINE6(mmap2, unsigned long, addr, unsigned long, len,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:215:18: note: aliased declaration here
     asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:201:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE6(name, ...) SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc//kernel/sys_sparc_32.c:101:1: note: in expansion of macro 'SYSCALL_DEFINE6'
    SYSCALL_DEFINE6(mmap2, unsigned long, addr, unsigned long, len,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:211:18: error: 'sys_getdomainname' alias between functions of incompatible types 'long int(char *, int)' and 'long int(long int,  long int)' [-Werror=attribute-alias]
     asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:197:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE2(name, ...) SYSCALL_DEFINEx(2, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc//kernel/sys_sparc_32.c:205:1: note: in expansion of macro 'SYSCALL_DEFINE2'
    SYSCALL_DEFINE2(getdomainname, char __user *, name, int, len)
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:215:18: note: aliased declaration here
     asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:197:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE2(name, ...) SYSCALL_DEFINEx(2, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc//kernel/sys_sparc_32.c:205:1: note: in expansion of macro 'SYSCALL_DEFINE2'
    SYSCALL_DEFINE2(getdomainname, char __user *, name, int, len)
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:211:18: error: 'sys_rt_sigaction' alias between functions of incompatible types 'long int(int,  const struct sigaction *, struct sigaction *, void *, size_t)' {aka 'long int(int,  const struct sigaction *, struct sigaction *, void *, unsigned int)'} and 'long int(long int,  long int,  long int,  long int,  long int)' [-Werror=attribute-alias]
     asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:200:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc//kernel/sys_sparc_32.c:176:1: note: in expansion of macro 'SYSCALL_DEFINE5'
    SYSCALL_DEFINE5(rt_sigaction, int, sig,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:215:18: note: aliased declaration here
     asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:200:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc//kernel/sys_sparc_32.c:176:1: note: in expansion of macro 'SYSCALL_DEFINE5'
    SYSCALL_DEFINE5(rt_sigaction, int, sig,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:211:18: error: 'sys_sparc_sigaction' alias between functions of incompatible types 'long int(int,  struct old_sigaction *, struct old_sigaction *)' and 'long int(long int,  long int,  long int)' [-Werror=attribute-alias]
     asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:198:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc//kernel/sys_sparc_32.c:168:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    SYSCALL_DEFINE3(sparc_sigaction, int, sig,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:215:18: note: aliased declaration here
     asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:198:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc//kernel/sys_sparc_32.c:168:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    SYSCALL_DEFINE3(sparc_sigaction, int, sig,
    ^~~~~~~~~~~~~~~
>> include/linux/syscalls.h:211:18: error: 'sys_sparc_remap_file_pages' alias between functions of incompatible types 'long int(long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)' and 'long int(long int,  long int,  long int,  long int,  long int)' [-Werror=attribute-alias]
     asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:200:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc//kernel/sys_sparc_32.c:119:1: note: in expansion of macro 'SYSCALL_DEFINE5'
    SYSCALL_DEFINE5(sparc_remap_file_pages, unsigned long, start, unsigned long, size,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:215:18: note: aliased declaration here
     asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:200:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc//kernel/sys_sparc_32.c:119:1: note: in expansion of macro 'SYSCALL_DEFINE5'
    SYSCALL_DEFINE5(sparc_remap_file_pages, unsigned long, start, unsigned long, size,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:211:18: error: 'sys_mmap' alias between functions of incompatible types 'long int(long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)' and 'long int(long int,  long int,  long int,  long int,  long int,  long int)' [-Werror=attribute-alias]
     asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:201:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE6(name, ...) SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc//kernel/sys_sparc_32.c:111:1: note: in expansion of macro 'SYSCALL_DEFINE6'
    SYSCALL_DEFINE6(mmap, unsigned long, addr, unsigned long, len,
    ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:215:18: note: aliased declaration here
     asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
                     ^~~
   include/linux/syscalls.h:207:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
     ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:201:36: note: in expansion of macro 'SYSCALL_DEFINEx'
    #define SYSCALL_DEFINE6(name, ...) SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
                                       ^~~~~~~~~~~~~~~
   arch/sparc//kernel/sys_sparc_32.c:111:1: note: in expansion of macro 'SYSCALL_DEFINE6'
    SYSCALL_DEFINE6(mmap, unsigned long, addr, unsigned long, len,
    ^~~~~~~~~~~~~~~
   cc1: all warnings being treated as errors

vim +211 include/linux/syscalls.h

609320c8 Yonghong Song       2017-09-07  204  
bed1ffca Frederic Weisbecker 2009-03-13  205  #define SYSCALL_DEFINEx(x, sname, ...)				\
99e621f7 Al Viro             2013-03-05  206  	SYSCALL_METADATA(sname, x, __VA_ARGS__)			\
bed1ffca Frederic Weisbecker 2009-03-13 @207  	__SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
bed1ffca Frederic Weisbecker 2009-03-13  208  
2cf09666 Al Viro             2013-01-21  209  #define __PROTECT(...) asmlinkage_protect(__VA_ARGS__)
bed1ffca Frederic Weisbecker 2009-03-13  210  #define __SYSCALL_DEFINEx(x, name, ...)					\
83460ec8 Andi Kleen          2013-11-12 @211  	asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))	\
83460ec8 Andi Kleen          2013-11-12  212  		__attribute__((alias(__stringify(SyS##name))));		\
07fe6e00 Al Viro             2013-01-21  213  	static inline long SYSC##name(__MAP(x,__SC_DECL,__VA_ARGS__));	\
f9597f24 Sergei Trofimovich  2013-09-11  214  	asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__));	\
07fe6e00 Al Viro             2013-01-21  215  	asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__))	\
1a94bc34 Heiko Carstens      2009-01-14  216  	{								\
2cf09666 Al Viro             2013-01-21  217  		long ret = SYSC##name(__MAP(x,__SC_CAST,__VA_ARGS__));	\
07fe6e00 Al Viro             2013-01-21  218  		__MAP(x,__SC_TEST,__VA_ARGS__);				\
2cf09666 Al Viro             2013-01-21  219  		__PROTECT(x, ret,__MAP(x,__SC_ARGS,__VA_ARGS__));	\
2cf09666 Al Viro             2013-01-21  220  		return ret;						\
1a94bc34 Heiko Carstens      2009-01-14  221  	}								\
07fe6e00 Al Viro             2013-01-21  222  	static inline long SYSC##name(__MAP(x,__SC_DECL,__VA_ARGS__))
1a94bc34 Heiko Carstens      2009-01-14  223  

:::::: The code at line 211 was first introduced by commit
:::::: 83460ec8dcac14142e7860a01fa59c267ac4657c syscalls.h: use gcc alias instead of assembler aliases for syscalls

:::::: TO: Andi Kleen <ak@...ux.intel.com>
:::::: CC: Linus Torvalds <torvalds@...ux-foundation.org>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Download attachment ".config.gz" of type "application/gzip" (12146 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ