From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga07.intel.com ([134.134.136.100]:22014 "EHLO mga07.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754835AbeE2Hzf (ORCPT ); Tue, 29 May 2018 03:55:35 -0400 Date: Tue, 29 May 2018 16:05:07 +0800 From: Philip Li To: Greg Kroah-Hartman Cc: Christoph Hellwig , kbuild test robot , "Darrick J. Wong" , x86@kernel.org, viro@zeniv.linux.org.uk, linux-fsdevel@vger.kernel.org, kbuild-all@01.org Subject: Re: [kbuild-all] [vfs:hch.aio 7/40] include/linux/syscalls.h:233:18: warning: 'sys_io_pgetevents' alias between functions of incompatible types 'long int(aio_context_t, long int, long int, struct io_event *, struct timespec *, const struct __aio_sigset *)' and 'long int(long int, long int, long int, long int, long int, long int)' Message-ID: <20180529080507.GA4990@intel.com> References: <201805291127.t3LJlHRg%fengguang.wu@intel.com> <20180529072001.GA393@lst.de> <20180529072024.GA21375@kroah.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180529072024.GA21375@kroah.com> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Tue, May 29, 2018 at 09:20:24AM +0200, Greg Kroah-Hartman wrote: > On Tue, May 29, 2018 at 09:20:01AM +0200, Christoph Hellwig wrote: > > I'm not seeing anything like this in my i386 builds. Is this > > something new in gcc 8.1? Also it seems deeply hidden in the syscall > > macros, so I might need some help understanding those. > > > > On Tue, May 29, 2018 at 11:12:31AM +0800, kbuild test robot wrote: > > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git hch.aio > > > head: 89b310a2b28dafbf3958e292785d51b7017da19e > > > commit: 7a074e96dee62586c935c80cecd931431bfdd0be [7/40] aio: implement io_pgetevents > > > config: i386-randconfig-c0-05290848 (attached as .config) > > > compiler: gcc-8 (Debian 8.1.0-3) 8.1.0 > > > reproduce: > > > git checkout 7a074e96dee62586c935c80cecd931431bfdd0be > > > # save the attached .config to linux build tree > > > make ARCH=i386 > > > > > > All warnings (new ones prefixed by >>): > > > > > > In file included from fs/aio.c:19: > > > include/linux/syscalls.h:233:18: warning: 'sys_io_setup' alias between functions of incompatible types 'long int(unsigned int, aio_context_t *)' and 'long int(long int, long int)' [-Wattribute-alias] > > > asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \ > > > ^~~ > > > include/linux/syscalls.h:222:2: note: in expansion of macro '__SYSCALL_DEFINEx' > > > __SYSCALL_DEFINEx(x, sname, __VA_ARGS__) > > > ^~~~~~~~~~~~~~~~~ > > > include/linux/syscalls.h:212:36: note: in expansion of macro 'SYSCALL_DEFINEx' > > > #define SYSCALL_DEFINE2(name, ...) SYSCALL_DEFINEx(2, _##name, __VA_ARGS__) > > > ^~~~~~~~~~~~~~~ > > > fs/aio.c:1322:1: note: in expansion of macro 'SYSCALL_DEFINE2' > > > SYSCALL_DEFINE2(io_setup, unsigned, nr_events, aio_context_t __user *, ctxp) > > > ^~~~~~~~~~~~~~~ > > > include/linux/syscalls.h:238:18: note: aliased declaration here > > > asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \ > > > ^~~~~~~~ > > > include/linux/syscalls.h:222:2: note: in expansion of macro '__SYSCALL_DEFINEx' > > > __SYSCALL_DEFINEx(x, sname, __VA_ARGS__) > > > ^~~~~~~~~~~~~~~~~ > > > include/linux/syscalls.h:212:36: note: in expansion of macro 'SYSCALL_DEFINEx' > > > #define SYSCALL_DEFINE2(name, ...) SYSCALL_DEFINEx(2, _##name, __VA_ARGS__) > > > ^~~~~~~~~~~~~~~ > > > fs/aio.c:1322:1: note: in expansion of macro 'SYSCALL_DEFINE2' > > > SYSCALL_DEFINE2(io_setup, unsigned, nr_events, aio_context_t __user *, ctxp) > > > ^~~~~~~~~~~~~~~ > > > >> include/linux/syscalls.h:233:18: warning: 'sys_io_pgetevents' alias between functions of incompatible types 'long int(aio_context_t, long int, long int, struct io_event *, struct timespec *, const struct __aio_sigset *)' and 'long int(long int, long int, long int, long int, long int, long int)' [-Wattribute-alias] > > > asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \ > > > ^~~ > > > include/linux/syscalls.h:222: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_DEFINE6(name, ...) SYSCALL_DEFINEx(6, _##name, __VA_ARGS__) > > > ^~~~~~~~~~~~~~~ > > > fs/aio.c:1931:1: note: in expansion of macro 'SYSCALL_DEFINE6' > > > SYSCALL_DEFINE6(io_pgetevents, > > > ^~~~~~~~~~~~~~~ > > > include/linux/syscalls.h:238:18: note: aliased declaration here > > > asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \ > > > ^~~~~~~~ > > > include/linux/syscalls.h:222: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_DEFINE6(name, ...) SYSCALL_DEFINEx(6, _##name, __VA_ARGS__) > > > ^~~~~~~~~~~~~~~ > > > fs/aio.c:1931:1: note: in expansion of macro 'SYSCALL_DEFINE6' > > > SYSCALL_DEFINE6(io_pgetevents, > > > ^~~~~~~~~~~~~~~ > > > include/linux/syscalls.h:233:18: warning: 'sys_io_getevents' alias between functions of incompatible types 'long int(aio_context_t, long int, long int, struct io_event *, struct timespec *)' and 'long int(long int, long int, long int, long int, long int)' [-Wattribute-alias] > > > asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \ > > > ^~~ > > > include/linux/syscalls.h:222:2: note: in expansion of macro '__SYSCALL_DEFINEx' > > > __SYSCALL_DEFINEx(x, sname, __VA_ARGS__) > > > ^~~~~~~~~~~~~~~~~ > > > include/linux/syscalls.h:215:36: note: in expansion of macro 'SYSCALL_DEFINEx' > > > #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__) > > > ^~~~~~~~~~~~~~~ > > > fs/aio.c:1913:1: note: in expansion of macro 'SYSCALL_DEFINE5' > > > SYSCALL_DEFINE5(io_getevents, aio_context_t, ctx_id, > > > ^~~~~~~~~~~~~~~ > > > include/linux/syscalls.h:238:18: note: aliased declaration here > > > asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \ > > > ^~~~~~~~ > > > include/linux/syscalls.h:222:2: note: in expansion of macro '__SYSCALL_DEFINEx' > > > __SYSCALL_DEFINEx(x, sname, __VA_ARGS__) > > > ^~~~~~~~~~~~~~~~~ > > > include/linux/syscalls.h:215:36: note: in expansion of macro 'SYSCALL_DEFINEx' > > > #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__) > > > ^~~~~~~~~~~~~~~ > > > fs/aio.c:1913:1: note: in expansion of macro 'SYSCALL_DEFINE5' > > > SYSCALL_DEFINE5(io_getevents, aio_context_t, ctx_id, > > > ^~~~~~~~~~~~~~~ > > > include/linux/syscalls.h:233:18: warning: 'sys_io_cancel' alias between functions of incompatible types 'long int(aio_context_t, struct iocb *, struct io_event *)' and 'long int(long int, long int, long int)' [-Wattribute-alias] > > > asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \ > > > ^~~ > > > include/linux/syscalls.h:222: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_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__) > > > ^~~~~~~~~~~~~~~ > > > fs/aio.c:1842:1: note: in expansion of macro 'SYSCALL_DEFINE3' > > > SYSCALL_DEFINE3(io_cancel, aio_context_t, ctx_id, struct iocb __user *, iocb, > > > ^~~~~~~~~~~~~~~ > > > include/linux/syscalls.h:238:18: note: aliased declaration here > > > asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \ > > > ^~~~~~~~ > > > include/linux/syscalls.h:222: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_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__) > > > ^~~~~~~~~~~~~~~ > > > fs/aio.c:1842:1: note: in expansion of macro 'SYSCALL_DEFINE3' > > > SYSCALL_DEFINE3(io_cancel, aio_context_t, ctx_id, struct iocb __user *, iocb, > > > ^~~~~~~~~~~~~~~ > > > include/linux/syscalls.h:233:18: warning: 'sys_io_submit' alias between functions of incompatible types 'long int(aio_context_t, long int, struct iocb **)' and 'long int(long int, long int, long int)' [-Wattribute-alias] > > > asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \ > > > ^~~ > > > include/linux/syscalls.h:222: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_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__) > > > ^~~~~~~~~~~~~~~ > > > fs/aio.c:1767:1: note: in expansion of macro 'SYSCALL_DEFINE3' > > > SYSCALL_DEFINE3(io_submit, aio_context_t, ctx_id, long, nr, > > > ^~~~~~~~~~~~~~~ > > > include/linux/syscalls.h:238:18: note: aliased declaration here > > > asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \ > > > ^~~~~~~~ > > > include/linux/syscalls.h:222: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_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__) > > > ^~~~~~~~~~~~~~~ > > > fs/aio.c:1767:1: note: in expansion of macro 'SYSCALL_DEFINE3' > > > SYSCALL_DEFINE3(io_submit, aio_context_t, ctx_id, long, nr, > > > ^~~~~~~~~~~~~~~ > > > include/linux/syscalls.h:233:18: warning: 'sys_io_destroy' alias between functions of incompatible types 'long int(aio_context_t)' and 'long int(long int)' [-Wattribute-alias] > > > asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \ > > > ^~~ > > > include/linux/syscalls.h:222:2: note: in expansion of macro '__SYSCALL_DEFINEx' > > > __SYSCALL_DEFINEx(x, sname, __VA_ARGS__) > > I was seeing this type of mess when trying to build with gcc-8.1, and > could not figure it out either. So I just gave up and went back to > gcc-7 for the time being. I don't think it's anything new you did here. thanks, we will follow up to exclude this pattern in report in bot side. > > thanks, > > greg k-h > _______________________________________________ > kbuild-all mailing list > kbuild-all@lists.01.org > https://lists.01.org/mailman/listinfo/kbuild-all