Subject: Re: linux-next: build failure after merge of the pidfd tree

From: Christian Brauner <[email-masked]>
Date: Thu, 28 Mar 2019 03:28:25 +0100

On March 28, 2019 3:04:49 AM GMT+01:00, Stephen Rothwell <[email-masked]> wrote:
>Hi Christian,
>
>After merging the pidfd tree, today's linux-next build (arm
>multi_v7_defconfig) failed like this:
>
>kernel/pid.c: In function '__do_sys_pidfd_open':
>kernel/pid.c:652:7: error: 'fd' redeclared as different kind of symbol
>  long fd = -EINVAL;
>       ^~
>In file included from kernel/pid.c:40:
>kernel/pid.c:649:46: note: previous definition of 'fd' was here
> SYSCALL_DEFINE4(pidfd_open, pid_t, pid, int, fd, int, pidfd,
>                                         ~~~~~^~
>include/linux/syscalls.h:117:27: note: in definition of macro
>'__SC_DECL'
> #define __SC_DECL(t, a) t a
>                           ^
>include/linux/syscalls.h:112:35: note: in expansion of macro '__MAP3'
> #define __MAP4(m,t,a,...) m(t,a), __MAP3(m,__VA_ARGS__)
>                                   ^~~~~~
>include/linux/syscalls.h:115:22: note: in expansion of macro '__MAP4'
> #define __MAP(n,...) __MAP##n(__VA_ARGS__)
>                      ^~~~~
>include/linux/syscalls.h:253:36: note: in expansion of macro '__MAP'
>  static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))
>                                    ^~~~~
>include/linux/syscalls.h:226:2: note: in expansion of macro
>'__SYSCALL_DEFINEx'
>  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
>  ^~~~~~~~~~~~~~~~~
>include/linux/syscalls.h:218:36: note: in expansion of macro
>'SYSCALL_DEFINEx'
>#define SYSCALL_DEFINE4(name, ...) SYSCALL_DEFINEx(4, _##name,
>__VA_ARGS__)
>                                    ^~~~~~~~~~~~~~~
>kernel/pid.c:649:1: note: in expansion of macro 'SYSCALL_DEFINE4'
> SYSCALL_DEFINE4(pidfd_open, pid_t, pid, int, fd, int, pidfd,
> ^~~~~~~~~~~~~~~
>kernel/pid.c:663:7: error: 'procfd' undeclared (first use in this
>function); did you mean 'pidfd'?
>   if (procfd != -1 || pidfd != -1)
>       ^~~~~~
>       pidfd
>kernel/pid.c:663:7: note: each undeclared identifier is reported only
>once for each function it appears in
>
>Caused by commit
>
>  9170fba40db0 ("pid: add pidfd_open()")
>
>I have used the version of the pifd tree from next-20190327 for today.
>
>Please do *not* use linux-next as a development tree (I have seen
>several
>different version of this code over the past few days :-().  The rules
>for linux-next included code include:
>"
>     * posted to the relevant mailing list,
>     * reviewed by you (or another maintainer of your subsystem tree),
>     * successfully unit tested, and 
>     * destined for the current or next Linux merge window.
>
>Basically, this should be just what you would send to Linus (or ask him
>to fetch)."

Yeah, that should not have ended up there.
This was caused by a faulty regex in my push script that pushes to different servers.
One of them always builds a kernel and runs the tests that come with all patches on the for-next and work branches. 

Sorry about that. Should be fixed now.
Christian