[PATCH 0/3][SRU][DISCO] seccomp: fix selftests compilation |
|||||||||||||||
![]() [PATCH 0/3][SRU][DISCO] seccomp: fix selftests compilation
![]() [PATCH 1/3] seccomp: avoid overflow in implicit constant conversion
![]()
[PATCH 2/3] seccomp: rework define for SECCOMP_USER_NOTIF_FLAG_CONTIN
|
In reply to this post by Manoj Iyer
From: Christian Brauner <[hidden email]>
Switch from BIT(0) to (1UL << 0). First, there are already two different forms used in the header, so there's no need to add a third. Second, the BIT() macros is kernel internal and afaict not actually exposed to userspace. Maybe there's some magic there I'm missing but it definitely causes issues when compiling a program that tries to use SECCOMP_USER_NOTIF_FLAG_CONTINUE. It currently fails in the following way: # github.com/lxc/lxd/lxd /usr/bin/ld: $WORK/b001/_x003.o: in function `__do_user_notification_continue': lxd/main_checkfeature.go:240: undefined reference to `BIT' collect2: error: ld returned 1 exit status Switching to (1UL << 0) should prevent that and is more in line what is already done in the rest of the header. BugLink: https://bugs.launchpad.net/bugs/1849281 Cc: Kees Cook <[hidden email]> Cc: Andy Lutomirski <[hidden email]> Signed-off-by: Christian Brauner <[hidden email]> Link: https://lore.kernel.org/r/20191024212539.4059-1-christian.brauner@... Signed-off-by: Kees Cook <[hidden email]> (cherry picked from commit 23b2c96fad21886c53f5e1a4ffedd45ddd2e85ba git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git) Signed-off-by: Manoj Iyer <[hidden email]> --- include/uapi/linux/seccomp.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/uapi/linux/seccomp.h b/include/uapi/linux/seccomp.h index e48e2fa2d248..be84d87f1f46 100644 --- a/include/uapi/linux/seccomp.h +++ b/include/uapi/linux/seccomp.h @@ -103,7 +103,7 @@ struct seccomp_notif { * SECCOMP_USER_NOTIF_FLAG_CONTINUE. Note that SECCOMP_RET_TRACE can equally * be overriden by SECCOMP_USER_NOTIF_FLAG_CONTINUE. */ -#define SECCOMP_USER_NOTIF_FLAG_CONTINUE BIT(0) +#define SECCOMP_USER_NOTIF_FLAG_CONTINUE (1UL << 0) struct seccomp_notif_resp { __u64 id; -- 2.20.1 -- kernel-team mailing list [hidden email] https://lists.ubuntu.com/mailman/listinfo/kernel-team |
In reply to this post by Manoj Iyer
From: Christian Brauner <[hidden email]>
The ifndef for SECCOMP_USER_NOTIF_FLAG_CONTINUE was placed under the ifndef for the SECCOMP_FILTER_FLAG_NEW_LISTENER feature. This will not work on systems that do support SECCOMP_FILTER_FLAG_NEW_LISTENER but do not support SECCOMP_USER_NOTIF_FLAG_CONTINUE. So move the latter ifndef out of the former ifndef's scope. 2019-10-20 11:14:01 make run_tests -C seccomp make: Entering directory '/usr/src/perf_selftests-x86_64-rhel-7.6-0eebfed2954f152259cae0ad57b91d3ea92968e8/tools/testing/selftests/seccomp' gcc -Wl,-no-as-needed -Wall seccomp_bpf.c -lpthread -o seccomp_bpf seccomp_bpf.c: In function ‘user_notification_continue’: seccomp_bpf.c:3562:15: error: ‘SECCOMP_USER_NOTIF_FLAG_CONTINUE’ undeclared (first use in this function) resp.flags = SECCOMP_USER_NOTIF_FLAG_CONTINUE; ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ seccomp_bpf.c:3562:15: note: each undeclared identifier is reported only once for each function it appears in Makefile:12: recipe for target 'seccomp_bpf' failed make: *** [seccomp_bpf] Error 1 make: Leaving directory '/usr/src/perf_selftests-x86_64-rhel-7.6-0eebfed2954f152259cae0ad57b91d3ea92968e8/tools/testing/selftests/seccomp' BugLink: https://bugs.launchpad.net/bugs/1849281 Reported-by: kernel test robot <[hidden email]> Fixes: 0eebfed2954f ("seccomp: test SECCOMP_USER_NOTIF_FLAG_CONTINUE") Cc: [hidden email] Signed-off-by: Christian Brauner <[hidden email]> Reviewed-by: Tycho Andersen <[hidden email]> Signed-off-by: Manoj Iyer <[hidden email]> --- tools/testing/selftests/seccomp/seccomp_bpf.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tools/testing/selftests/seccomp/seccomp_bpf.c b/tools/testing/selftests/seccomp/seccomp_bpf.c index 2e9ce7b65e76..45df29b7feb8 100644 --- a/tools/testing/selftests/seccomp/seccomp_bpf.c +++ b/tools/testing/selftests/seccomp/seccomp_bpf.c @@ -168,10 +168,6 @@ struct seccomp_metadata { #define SECCOMP_RET_USER_NOTIF 0x7fc00000U -#ifndef SECCOMP_USER_NOTIF_FLAG_CONTINUE -#define SECCOMP_USER_NOTIF_FLAG_CONTINUE 0x00000001 -#endif - #define SECCOMP_IOC_MAGIC '!' #define SECCOMP_IO(nr) _IO(SECCOMP_IOC_MAGIC, nr) #define SECCOMP_IOR(nr, type) _IOR(SECCOMP_IOC_MAGIC, nr, type) @@ -205,6 +201,10 @@ struct seccomp_notif_sizes { }; #endif +#ifndef SECCOMP_USER_NOTIF_FLAG_CONTINUE +#define SECCOMP_USER_NOTIF_FLAG_CONTINUE 0x00000001 +#endif + #ifndef PTRACE_EVENTMSG_SYSCALL_ENTRY #define PTRACE_EVENTMSG_SYSCALL_ENTRY 1 #define PTRACE_EVENTMSG_SYSCALL_EXIT 2 -- 2.20.1 -- kernel-team mailing list [hidden email] https://lists.ubuntu.com/mailman/listinfo/kernel-team |
In reply to this post by Manoj Iyer
On 11/7/19 1:24 PM, Manoj Iyer wrote:
> Please consider these patches to Eoan that fixes bug: Both Eoan and Disco, right? > https://bugs.launchpad.net/bug/1849281 > > I built a test kernel and it built successfully with no errors. > > Thanks > Manoj Iyer > > > Acked-by: Connor Kuehl <[hidden email]> -- kernel-team mailing list [hidden email] https://lists.ubuntu.com/mailman/listinfo/kernel-team |
In reply to this post by Manoj Iyer
On 07.11.19 22:24, Manoj Iyer wrote:
> Please consider these patches to Eoan that fixes bug: > https://bugs.launchpad.net/bug/1849281 > > I built a test kernel and it built successfully with no errors. > > Thanks > Manoj Iyer > > > -- kernel-team mailing list [hidden email] https://lists.ubuntu.com/mailman/listinfo/kernel-team |
In reply to this post by Manoj Iyer
On 07.11.19 22:24, Manoj Iyer wrote:
> Please consider these patches to Eoan that fixes bug: > https://bugs.launchpad.net/bug/1849281 > > I built a test kernel and it built successfully with no errors. > > Thanks > Manoj Iyer > > > -Stefan -- kernel-team mailing list [hidden email] https://lists.ubuntu.com/mailman/listinfo/kernel-team |
Free forum by Nabble | Edit this page |