Title: [265326] trunk/Source/WebKit
Revision
265326
Author
ape...@igalia.com
Date
2020-08-06 07:48:07 -0700 (Thu, 06 Aug 2020)

Log Message

[WPE][GTK] Wrong argument order for clone syscall seccomp filter on s390x
https://bugs.webkit.org/show_bug.cgi?id=215212

Reviewed by Michael Catanzaro.

Patch based on this Flatpak pull request:
https://github.com/flatpak/flatpak/pull/3777

No new tests needed.

* UIProcess/Launcher/glib/BubblewrapLauncher.cpp:
(WebKit::setupSeccomp): Add preprocessor guard to choose the correct
clone() system call argument on S390.

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (265325 => 265326)


--- trunk/Source/WebKit/ChangeLog	2020-08-06 14:46:35 UTC (rev 265325)
+++ trunk/Source/WebKit/ChangeLog	2020-08-06 14:48:07 UTC (rev 265326)
@@ -1,3 +1,19 @@
+2020-08-06  Adrian Perez de Castro  <ape...@igalia.com>
+
+        [WPE][GTK] Wrong argument order for clone syscall seccomp filter on s390x
+        https://bugs.webkit.org/show_bug.cgi?id=215212
+
+        Reviewed by Michael Catanzaro.
+
+        Patch based on this Flatpak pull request:
+        https://github.com/flatpak/flatpak/pull/3777
+
+        No new tests needed.
+
+        * UIProcess/Launcher/glib/BubblewrapLauncher.cpp:
+        (WebKit::setupSeccomp): Add preprocessor guard to choose the correct
+        clone() system call argument on S390.
+
 2020-08-06  James Savage  <james.sav...@apple.com>
 
         Could not find module 'WebKit' for target 'armv7-apple-ios'

Modified: trunk/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp (265325 => 265326)


--- trunk/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp	2020-08-06 14:46:35 UTC (rev 265325)
+++ trunk/Source/WebKit/UIProcess/Launcher/glib/BubblewrapLauncher.cpp	2020-08-06 14:48:07 UTC (rev 265326)
@@ -598,7 +598,16 @@
     //    in common/flatpak-run.c
     //  https://git.gnome.org/browse/linux-user-chroot
     //    in src/setup-seccomp.c
+
+#if defined(__s390__) || defined(__s390x__) || defined(__CRIS__)
+    // Architectures with CONFIG_CLONE_BACKWARDS2: the child stack
+    // and flags arguments are reversed so the flags come second.
+    struct scmp_arg_cmp cloneArg = SCMP_A1(SCMP_CMP_MASKED_EQ, CLONE_NEWUSER, CLONE_NEWUSER);
+#else
+    // Normally the flags come first.
     struct scmp_arg_cmp cloneArg = SCMP_A0(SCMP_CMP_MASKED_EQ, CLONE_NEWUSER, CLONE_NEWUSER);
+#endif
+
     struct scmp_arg_cmp ttyArg = SCMP_A1(SCMP_CMP_MASKED_EQ, 0xFFFFFFFFu, TIOCSTI);
     struct {
         int scall;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to