qt5.6: backport seccomp patch to fix errors w/new glibc + epoll_pwait

Based on:
4e8083b4ab

Fixes mendeley bug mentioned in #33396,
which links to related issues in other distributions and upstream Qt.
This commit is contained in:
Will Dietz 2018-01-04 12:39:00 -06:00
parent 24e8c382af
commit 42b84057a4
2 changed files with 26 additions and 2 deletions

@ -51,8 +51,8 @@ let
qtscript = [ ./qtscript.patch ];
qtserialport = [ ./qtserialport.patch ];
qttools = [ ./qttools.patch ];
qtwebengine =
optional stdenv.needsPax ./qtwebengine-paxmark-mksnapshot.patch;
qtwebengine = [ ./qtwebengine-seccomp.patch ]
++ optional stdenv.needsPax ./qtwebengine-paxmark-mksnapshot.patch;
qtwebkit = [ ./qtwebkit.patch ];
};

@ -0,0 +1,24 @@
Backported to Qt 5.6 for epoll_pwait fix on newer glibc
Part of upstream Chromium's 4e8083b4ab953ba298aedfc4e79d464be15e4012
Review URL: https://codereview.chromium.org/1613883002
---
diff --git a/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc b/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
index 10278dc5fc9b..b30b3e6acef6 100644
--- a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
+++ b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc
@@ -414,6 +414,7 @@ bool SyscallSets::IsAllowedEpoll(int sysno) {
case __NR_epoll_create:
case __NR_epoll_wait:
#endif
+ case __NR_epoll_pwait:
case __NR_epoll_create1:
case __NR_epoll_ctl:
return true;
@@ -421,7 +422,6 @@ bool SyscallSets::IsAllowedEpoll(int sysno) {
#if defined(__x86_64__)
case __NR_epoll_ctl_old:
#endif
- case __NR_epoll_pwait:
#if defined(__x86_64__)
case __NR_epoll_wait_old:
#endif