[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <201812041031.7kJxvTuh%fengguang.wu@intel.com>
Date: Tue, 4 Dec 2018 10:07:38 +0800
From: kbuild test robot <lkp@...el.com>
To: Tycho Andersen <tycho@...ho.ws>
Cc: kbuild-all@...org, Kees Cook <keescook@...omium.org>,
Andy Lutomirski <luto@...capital.net>,
Oleg Nesterov <oleg@...hat.com>,
"Eric W . Biederman" <ebiederm@...ssion.com>,
"Serge E . Hallyn" <serge@...lyn.com>,
Christian Brauner <christian@...uner.io>,
Tyler Hicks <tyhicks@...onical.com>,
Akihiro Suda <suda.akihiro@....ntt.co.jp>,
Aleksa Sarai <asarai@...e.de>, Jann Horn <jannh@...gle.com>,
linux-kernel@...r.kernel.org,
containers@...ts.linux-foundation.org, linux-api@...r.kernel.org,
Tycho Andersen <tycho@...ho.ws>
Subject: Re: [PATCH v9 2/4] seccomp: switch system call argument type to void
*
Hi Tycho,
I love your patch! Yet something to improve:
[auto build test ERROR on linus/master]
[also build test ERROR on v4.20-rc5 next-20181203]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Tycho-Andersen/seccomp-hoist-struct-seccomp_data-recalculation-higher/20181204-013450
config: i386-randconfig-x005-201848 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
All errors (new ones prefixed by >>):
In file included from kernel/seccomp.c:28:0:
>> include/linux/syscalls.h:239:18: error: conflicting types for 'sys_seccomp'
asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
^
include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
__SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
^~~~~~~~~~~~~~~~~
include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
#define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
^~~~~~~~~~~~~~~
kernel/seccomp.c:946:1: note: in expansion of macro 'SYSCALL_DEFINE3'
SYSCALL_DEFINE3(seccomp, unsigned int, op, unsigned int, flags,
^~~~~~~~~~~~~~~
In file included from kernel/seccomp.c:28:0:
include/linux/syscalls.h:881:17: note: previous declaration of 'sys_seccomp' was here
asmlinkage long sys_seccomp(unsigned int op, unsigned int flags,
^~~~~~~~~~~
vim +/sys_seccomp +239 include/linux/syscalls.h
1bd21c6c2 Dominik Brodowski 2018-04-05 228
e145242ea Dominik Brodowski 2018-04-09 229 /*
e145242ea Dominik Brodowski 2018-04-09 230 * The asmlinkage stub is aliased to a function named __se_sys_*() which
e145242ea Dominik Brodowski 2018-04-09 231 * sign-extends 32-bit ints to longs whenever needed. The actual work is
e145242ea Dominik Brodowski 2018-04-09 232 * done within __do_sys_*().
e145242ea Dominik Brodowski 2018-04-09 233 */
1bd21c6c2 Dominik Brodowski 2018-04-05 234 #ifndef __SYSCALL_DEFINEx
bed1ffca0 Frederic Weisbecker 2009-03-13 235 #define __SYSCALL_DEFINEx(x, name, ...) \
bee200317 Arnd Bergmann 2018-06-19 236 __diag_push(); \
bee200317 Arnd Bergmann 2018-06-19 237 __diag_ignore(GCC, 8, "-Wattribute-alias", \
bee200317 Arnd Bergmann 2018-06-19 238 "Type aliasing is used to sanitize syscall arguments");\
83460ec8d Andi Kleen 2013-11-12 @239 asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
e145242ea Dominik Brodowski 2018-04-09 240 __attribute__((alias(__stringify(__se_sys##name)))); \
c9a211951 Howard McLauchlan 2018-03-21 241 ALLOW_ERROR_INJECTION(sys##name, ERRNO); \
e145242ea Dominik Brodowski 2018-04-09 242 static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__));\
e145242ea Dominik Brodowski 2018-04-09 243 asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)); \
e145242ea Dominik Brodowski 2018-04-09 244 asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
1a94bc347 Heiko Carstens 2009-01-14 245 { \
e145242ea Dominik Brodowski 2018-04-09 246 long ret = __do_sys##name(__MAP(x,__SC_CAST,__VA_ARGS__));\
07fe6e00f Al Viro 2013-01-21 247 __MAP(x,__SC_TEST,__VA_ARGS__); \
2cf096668 Al Viro 2013-01-21 248 __PROTECT(x, ret,__MAP(x,__SC_ARGS,__VA_ARGS__)); \
2cf096668 Al Viro 2013-01-21 249 return ret; \
1a94bc347 Heiko Carstens 2009-01-14 250 } \
bee200317 Arnd Bergmann 2018-06-19 251 __diag_pop(); \
e145242ea Dominik Brodowski 2018-04-09 252 static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))
1bd21c6c2 Dominik Brodowski 2018-04-05 253 #endif /* __SYSCALL_DEFINEx */
1a94bc347 Heiko Carstens 2009-01-14 254
:::::: The code at line 239 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" (29159 bytes)
Powered by blists - more mailing lists