Message ID | 20191022093634.27281-2-christian.brauner@ubuntu.com |
---|---|
State | New |
Headers | show |
Series | seccomp: fix selftests compilation | expand |
On 22.10.19 11:36, Christian Brauner wrote: > From: Tycho Andersen <tycho@tycho.ws> > > BugLink: https://bugs.launchpad.net/bugs/1849281 > > [ Upstream commit 88282297fff00796e81f5e67734a6afdfb31fbc4 ] > > The seccomp selftest goes to some length to build against older kernel > headers, viz. all the #ifdefs at the beginning of the file. > > Commit 201766a20e30 ("ptrace: add PTRACE_GET_SYSCALL_INFO request") > introduces some additional macros, but doesn't do the #ifdef dance. > Let's add that dance here to avoid: > > gcc -Wl,-no-as-needed -Wall seccomp_bpf.c -lpthread -o seccomp_bpf > In file included from seccomp_bpf.c:51: > seccomp_bpf.c: In function ‘tracer_ptrace’: > seccomp_bpf.c:1787:20: error: ‘PTRACE_EVENTMSG_SYSCALL_ENTRY’ undeclared (first use in this function); did you mean ‘PTRACE_EVENT_CLONE’? > EXPECT_EQ(entry ? PTRACE_EVENTMSG_SYSCALL_ENTRY > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ../kselftest_harness.h:608:13: note: in definition of macro ‘__EXPECT’ > __typeof__(_expected) __exp = (_expected); \ > ^~~~~~~~~ > seccomp_bpf.c:1787:2: note: in expansion of macro ‘EXPECT_EQ’ > EXPECT_EQ(entry ? PTRACE_EVENTMSG_SYSCALL_ENTRY > ^~~~~~~~~ > seccomp_bpf.c:1787:20: note: each undeclared identifier is reported only once for each function it appears in > EXPECT_EQ(entry ? PTRACE_EVENTMSG_SYSCALL_ENTRY > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ../kselftest_harness.h:608:13: note: in definition of macro ‘__EXPECT’ > __typeof__(_expected) __exp = (_expected); \ > ^~~~~~~~~ > seccomp_bpf.c:1787:2: note: in expansion of macro ‘EXPECT_EQ’ > EXPECT_EQ(entry ? PTRACE_EVENTMSG_SYSCALL_ENTRY > ^~~~~~~~~ > seccomp_bpf.c:1788:6: error: ‘PTRACE_EVENTMSG_SYSCALL_EXIT’ undeclared (first use in this function); did you mean ‘PTRACE_EVENT_EXIT’? > : PTRACE_EVENTMSG_SYSCALL_EXIT, msg); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ../kselftest_harness.h:608:13: note: in definition of macro ‘__EXPECT’ > __typeof__(_expected) __exp = (_expected); \ > ^~~~~~~~~ > seccomp_bpf.c:1787:2: note: in expansion of macro ‘EXPECT_EQ’ > EXPECT_EQ(entry ? PTRACE_EVENTMSG_SYSCALL_ENTRY > ^~~~~~~~~ > make: *** [Makefile:12: seccomp_bpf] Error 1 > > [skhan@linuxfoundation.org: Fix checkpatch error in commit log] > Signed-off-by: Tycho Andersen <tycho@tycho.ws> > Fixes: 201766a20e30 ("ptrace: add PTRACE_GET_SYSCALL_INFO request") > Acked-by: Kees Cook <keescook@chromium.org> > Signed-off-by: Shuah Khan <skhan@linuxfoundation.org> > Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com> Hi Christian, It seems this is a cherry-pick or backport of a patch from one of the stable upstream branches. In that case, we also need to add the provenance of the patch, the sha1 from where you are cherry-picking/backport (apart from upstream commit up there ^). You don't need to resend the patch, please add the additional information in a reply email. Thanks, Kleber > --- > tools/testing/selftests/seccomp/seccomp_bpf.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/tools/testing/selftests/seccomp/seccomp_bpf.c b/tools/testing/selftests/seccomp/seccomp_bpf.c > index 7e448d5b608a..6021baecb386 100644 > --- a/tools/testing/selftests/seccomp/seccomp_bpf.c > +++ b/tools/testing/selftests/seccomp/seccomp_bpf.c > @@ -204,6 +204,11 @@ struct seccomp_notif_sizes { > }; > #endif > > +#ifndef PTRACE_EVENTMSG_SYSCALL_ENTRY > +#define PTRACE_EVENTMSG_SYSCALL_ENTRY 1 > +#define PTRACE_EVENTMSG_SYSCALL_EXIT 2 > +#endif > + > #ifndef seccomp > int seccomp(unsigned int op, unsigned int flags, void *args) > { >
diff --git a/tools/testing/selftests/seccomp/seccomp_bpf.c b/tools/testing/selftests/seccomp/seccomp_bpf.c index 7e448d5b608a..6021baecb386 100644 --- a/tools/testing/selftests/seccomp/seccomp_bpf.c +++ b/tools/testing/selftests/seccomp/seccomp_bpf.c @@ -204,6 +204,11 @@ struct seccomp_notif_sizes { }; #endif +#ifndef PTRACE_EVENTMSG_SYSCALL_ENTRY +#define PTRACE_EVENTMSG_SYSCALL_ENTRY 1 +#define PTRACE_EVENTMSG_SYSCALL_EXIT 2 +#endif + #ifndef seccomp int seccomp(unsigned int op, unsigned int flags, void *args) {