diff options
author | Michael Lass | 2019-06-06 10:23:25 +0200 |
---|---|---|
committer | Maxim Baz | 2019-06-06 10:23:25 +0200 |
commit | d067f8f61c495b78a3528d397d5041a054579dd8 (patch) | |
tree | bb274e0ebfcdedec56be3773eb087251ee486db4 | |
parent | 8563104671251e86c726dd18b39afaee270ec33d (diff) | |
download | aur-d067f8f61c495b78a3528d397d5041a054579dd8.tar.gz |
chromium-vaapi: 75.0.3770.80-1 (#5)
-rw-r--r-- | .SRCINFO | 14 | ||||
-rw-r--r-- | PKGBUILD | 16 | ||||
-rw-r--r-- | chromium-fix-the-flash-for-new-windows.patch | 54 | ||||
-rw-r--r-- | chromium-glibc-2.29.patch | 105 | ||||
-rw-r--r-- | chromium-vaapi.patch | 4 | ||||
-rw-r--r-- | libstdc-do-not-assume-unique_ptr-has-ostream-operator.patch | 36 |
6 files changed, 53 insertions, 176 deletions
@@ -1,7 +1,7 @@ pkgbase = chromium-vaapi pkgdesc = Chromium with VA-API support to enable hardware acceleration - pkgver = 74.0.3729.169 - pkgrel = 2 + pkgver = 75.0.3770.80 + pkgrel = 1 url = https://www.chromium.org/Home install = chromium.install arch = x86_64 @@ -55,21 +55,21 @@ pkgbase = chromium-vaapi optdepends = kwallet: for storing passwords in KWallet provides = chromium conflicts = chromium - source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-74.0.3729.169.tar.xz + source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-75.0.3770.80.tar.xz source = chromium-launcher-6.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v6.tar.gz source = chromium-drirc-disable-10bpc-color-configs.conf source = chromium-vaapi.patch source = chromium-system-icu.patch - source = chromium-glibc-2.29.patch + source = libstdc-do-not-assume-unique_ptr-has-ostream-operator.patch source = chromium-fix-window-flash-for-some-WMs.patch source = chromium-widevine.patch source = chromium-skia-harmony.patch - sha256sums = 070f0210017f54b65264f88726431da7582e36a04caa673fe50662e8b41a0cb4 + sha256sums = da828bc8d887821380b461abfbbd0e17538c211d56f240f03711b918c77a66d6 sha256sums = 04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1 sha256sums = babda4f5c1179825797496898d77334ac067149cac03d797ab27ac69671a7feb - sha256sums = e87ede45edf39ac19e56ac1ae49c9d1f5f5130e5838bcbb4c3d4fb16e55575c0 + sha256sums = 4befcfa310db89736c890dd41e698a6a77ecec8b6f75077ddbae4a1c0ba80092 sha256sums = e2d284311f49c529ea45083438a768db390bde52949995534034d2a814beab89 - sha256sums = dd791f154b48e69cd47fd94753c45448655b529590995fd71ac1591c53a3d60c + sha256sums = e309dfd9d790f32cb1d23103726ac25e405b6ae6757a1c957a8395667d753908 sha256sums = 183d8cc712f0bcf1afcb01ce90c4c104a4c8d8070a06f94974a28b007d9e2ce4 sha256sums = d081f2ef8793544685aad35dea75a7e6264a2cb987ff3541e6377f4a3650a28b sha256sums = 5887f78b55c4ecbbcba5930f3f0bb7bc0117c2a41c2f761805fcf7f46f1ca2b3 @@ -10,8 +10,8 @@ # Contributor: Daniel J Griffiths <ghost1227@archlinux.us> pkgname=chromium-vaapi -pkgver=74.0.3729.169 -pkgrel=2 +pkgver=75.0.3770.80 +pkgrel=1 _launcher_ver=6 pkgdesc="Chromium with VA-API support to enable hardware acceleration" arch=('x86_64') @@ -34,16 +34,16 @@ source=(https://commondatastorage.googleapis.com/chromium-browser-official/chrom chromium-drirc-disable-10bpc-color-configs.conf chromium-vaapi.patch chromium-system-icu.patch - chromium-glibc-2.29.patch + libstdc-do-not-assume-unique_ptr-has-ostream-operator.patch chromium-fix-window-flash-for-some-WMs.patch chromium-widevine.patch chromium-skia-harmony.patch) -sha256sums=('070f0210017f54b65264f88726431da7582e36a04caa673fe50662e8b41a0cb4' +sha256sums=('da828bc8d887821380b461abfbbd0e17538c211d56f240f03711b918c77a66d6' '04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1' 'babda4f5c1179825797496898d77334ac067149cac03d797ab27ac69671a7feb' - 'e87ede45edf39ac19e56ac1ae49c9d1f5f5130e5838bcbb4c3d4fb16e55575c0' + '4befcfa310db89736c890dd41e698a6a77ecec8b6f75077ddbae4a1c0ba80092' 'e2d284311f49c529ea45083438a768db390bde52949995534034d2a814beab89' - 'dd791f154b48e69cd47fd94753c45448655b529590995fd71ac1591c53a3d60c' + 'e309dfd9d790f32cb1d23103726ac25e405b6ae6757a1c957a8395667d753908' '183d8cc712f0bcf1afcb01ce90c4c104a4c8d8070a06f94974a28b007d9e2ce4' 'd081f2ef8793544685aad35dea75a7e6264a2cb987ff3541e6377f4a3650a28b' '5887f78b55c4ecbbcba5930f3f0bb7bc0117c2a41c2f761805fcf7f46f1ca2b3') @@ -96,8 +96,8 @@ prepare() { third_party/blink/renderer/core/xml/parser/xml_document_parser.cc \ third_party/libxml/chromium/libxml_utils.cc - # https://crbug.com/949312 - patch -Np1 -i ../chromium-glibc-2.29.patch + # https://chromium-review.googlesource.com/1584292 + patch -Np1 -i ../libstdc-do-not-assume-unique_ptr-has-ostream-operator.patch # Enable VAAPI on Linux patch -Np1 -i ../chromium-vaapi.patch diff --git a/chromium-fix-the-flash-for-new-windows.patch b/chromium-fix-the-flash-for-new-windows.patch deleted file mode 100644 index 5a1f48777c43..000000000000 --- a/chromium-fix-the-flash-for-new-windows.patch +++ /dev/null @@ -1,54 +0,0 @@ -From adc543fe6a7b3bae9522257e651205140615fecb Mon Sep 17 00:00:00 2001 -From: Peng Huang <penghuang@chromium.org> -Date: Fri, 3 May 2019 20:40:41 +0000 -Subject: [PATCH] Fix the flash for any new created window. - -The flash is because the child window created by GLSurfaceGLX doesn't -match the visual of parent window. Fix the problem by always creating -parent window with the same visual. - -Bug: 956061 -Change-Id: I88cb65b4a0313be6fdea1bd8d6770d351500ccbb -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1591946 -Reviewed-by: Thomas Anderson <thomasanderson@chromium.org> -Reviewed-by: Antoine Labour <piman@chromium.org> -Commit-Queue: Peng Huang <penghuang@chromium.org> -Cr-Commit-Position: refs/heads/master@{#656497} ---- - .../desktop_window_tree_host_x11.cc | 19 +++++-------------- - 1 file changed, 5 insertions(+), 14 deletions(-) - -diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc b/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc -index 4dda760a4d..8bdb7b026d 100644 ---- a/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc -+++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc -@@ -1426,24 +1426,15 @@ void DesktopWindowTreeHostX11::InitX11Window( - if (override_redirect_) - attribute_mask |= CWOverrideRedirect; - -- bool enable_transparent_visuals; -- switch (params.opacity) { -- case Widget::InitParams::OPAQUE_WINDOW: -- enable_transparent_visuals = false; -- break; -- case Widget::InitParams::TRANSLUCENT_WINDOW: -- enable_transparent_visuals = true; -- break; -- case Widget::InitParams::INFER_OPACITY: -- default: -- enable_transparent_visuals = params.type == Widget::InitParams::TYPE_DRAG; -- } -- - Visual* visual = CopyFromParent; - int depth = CopyFromParent; - Colormap colormap = CopyFromParent; -+ -+ // GLSurfaceGLX always create child window with alpha channel. If the parent -+ // window doesn't have alpha channel, it causes flash, so always request argb -+ // visual. - ui::XVisualManager::GetInstance()->ChooseVisualForWindow( -- enable_transparent_visuals, &visual, &depth, &colormap, -+ true /* want_argb_visual */, &visual, &depth, &colormap, - &use_argb_visual_); - - if (colormap != CopyFromParent) { diff --git a/chromium-glibc-2.29.patch b/chromium-glibc-2.29.patch deleted file mode 100644 index 11d9cb9a31a7..000000000000 --- a/chromium-glibc-2.29.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 65046b8f90d0336cbe5f2f15cc7da5cb798360ad Mon Sep 17 00:00:00 2001 -From: Matthew Denton <mpdenton@chromium.org> -Date: Wed, 24 Apr 2019 15:44:40 +0000 -Subject: [PATCH] Update Linux Seccomp syscall restrictions to EPERM - posix_spawn/vfork - -Glibc's system() function switched to using posix_spawn, which uses -CLONE_VFORK. Pepperflash includes a sandbox debugging check which -relies on us EPERM-ing process creation like this, rather than crashing -the process with SIGSYS. - -So whitelist clone() calls, like posix_spawn, that include the flags -CLONE_VFORK and CLONE_VM. - -Bug: 949312 -Change-Id: I3f4b90114b2fc1d9929e3c0a85bbe8f10def3c20 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1568086 -Commit-Queue: Robert Sesek <rsesek@chromium.org> -Reviewed-by: Robert Sesek <rsesek@chromium.org> -Cr-Commit-Position: refs/heads/master@{#653590} ---- - .../baseline_policy_unittest.cc | 29 +++++++++++++++++++ - .../syscall_parameters_restrictions.cc | 13 +++++++-- - 2 files changed, 40 insertions(+), 2 deletions(-) - -diff --git a/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc b/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc -index cdeb210ccb..40fcebf933 100644 ---- a/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc -+++ b/sandbox/linux/seccomp-bpf-helpers/baseline_policy_unittest.cc -@@ -10,7 +10,9 @@ - #include <sched.h> - #include <signal.h> - #include <stddef.h> -+#include <stdlib.h> - #include <string.h> -+#include <sys/mman.h> - #include <sys/prctl.h> - #include <sys/resource.h> - #include <sys/socket.h> -@@ -130,6 +132,33 @@ BPF_TEST_C(BaselinePolicy, ForkArmEperm, BaselinePolicy) { - BPF_ASSERT_EQ(EPERM, fork_errno); - } - -+BPF_TEST_C(BaselinePolicy, SystemEperm, BaselinePolicy) { -+ errno = 0; -+ int ret_val = system("echo SHOULD NEVER RUN"); -+ BPF_ASSERT_EQ(-1, ret_val); -+ BPF_ASSERT_EQ(EPERM, errno); -+} -+ -+BPF_TEST_C(BaselinePolicy, CloneVforkEperm, BaselinePolicy) { -+ errno = 0; -+ // Allocate a couple pages for the child's stack even though the child should -+ // never start. -+ constexpr size_t kStackSize = 4096 * 4; -+ void* child_stack = mmap(nullptr, kStackSize, PROT_READ | PROT_WRITE, -+ MAP_PRIVATE | MAP_ANONYMOUS | MAP_STACK, -1, 0); -+ BPF_ASSERT_NE(child_stack, nullptr); -+ pid_t pid = syscall(__NR_clone, CLONE_VM | CLONE_VFORK | SIGCHLD, -+ static_cast<char*>(child_stack) + kStackSize, nullptr, -+ nullptr, nullptr); -+ const int clone_errno = errno; -+ TestUtils::HandlePostForkReturn(pid); -+ -+ munmap(child_stack, kStackSize); -+ -+ BPF_ASSERT_EQ(-1, pid); -+ BPF_ASSERT_EQ(EPERM, clone_errno); -+} -+ - BPF_TEST_C(BaselinePolicy, CreateThread, BaselinePolicy) { - base::Thread thread("sandbox_tests"); - BPF_ASSERT(thread.Start()); -diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc -index 100afe50e3..348ab6e8c5 100644 ---- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc -+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc -@@ -135,7 +135,8 @@ namespace sandbox { - #if !defined(OS_NACL_NONSFI) - // Allow Glibc's and Android pthread creation flags, crash on any other - // thread creation attempts and EPERM attempts to use neither --// CLONE_VM, nor CLONE_THREAD, which includes all fork() implementations. -+// CLONE_VM nor CLONE_THREAD (all fork implementations), unless CLONE_VFORK is -+// present (as in newer versions of posix_spawn). - ResultExpr RestrictCloneToThreadsAndEPERMFork() { - const Arg<unsigned long> flags(0); - -@@ -154,8 +155,16 @@ ResultExpr RestrictCloneToThreadsAndEPERMFork() { - AnyOf(flags == kAndroidCloneMask, flags == kObsoleteAndroidCloneMask, - flags == kGlibcPthreadFlags); - -+ // The following two flags are the two important flags in any vfork-emulating -+ // clone call. EPERM any clone call that contains both of them. -+ const uint64_t kImportantCloneVforkFlags = CLONE_VFORK | CLONE_VM; -+ -+ const BoolExpr is_fork_or_clone_vfork = -+ AnyOf((flags & (CLONE_VM | CLONE_THREAD)) == 0, -+ (flags & kImportantCloneVforkFlags) == kImportantCloneVforkFlags); -+ - return If(IsAndroid() ? android_test : glibc_test, Allow()) -- .ElseIf((flags & (CLONE_VM | CLONE_THREAD)) == 0, Error(EPERM)) -+ .ElseIf(is_fork_or_clone_vfork, Error(EPERM)) - .Else(CrashSIGSYSClone()); - } - diff --git a/chromium-vaapi.patch b/chromium-vaapi.patch index da7b355c4df8..7f07d43182f0 100644 --- a/chromium-vaapi.patch +++ b/chromium-vaapi.patch @@ -91,8 +91,8 @@ index 5dac660bb..6cc4115da 100644 + +#if defined(OS_CHROMEOS) + - extern const char kAllowTouchpadThreeFingerClickName[]; - extern const char kAllowTouchpadThreeFingerClickDescription[]; + extern const char kAppServiceAshName[]; + extern const char kAppServiceAshDescription[]; diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json index 65f37b3f1..ae8a1718f 100644 diff --git a/libstdc-do-not-assume-unique_ptr-has-ostream-operator.patch b/libstdc-do-not-assume-unique_ptr-has-ostream-operator.patch new file mode 100644 index 000000000000..2a2cad0db4ae --- /dev/null +++ b/libstdc-do-not-assume-unique_ptr-has-ostream-operator.patch @@ -0,0 +1,36 @@ +From aeed4d1f15ce84a17ea0bc219e258dc4982b2368 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz <jose.dapena@lge.com> +Date: Fri, 26 Apr 2019 20:07:05 +0000 +Subject: [PATCH] libstdc++: do not assume unique_ptr has ostream operator +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +CompositorFrameReportingController is using DCHECK_NE to compare +several unique_ptr. This is valid in libc++, but on libstdc++ unique_ptr +does not have an ostream operator. + +Change-Id: I9f23ef17f02b9e107694ba493f6f8f3caf5cac4d +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1584292 +Reviewed-by: Sunny Sachanandani <sunnyps@chromium.org> +Commit-Queue: José Dapena Paz <jose.dapena@lge.com> +Cr-Commit-Position: refs/heads/master@{#654570} +--- + cc/scheduler/compositor_frame_reporting_controller.cc | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/cc/scheduler/compositor_frame_reporting_controller.cc b/cc/scheduler/compositor_frame_reporting_controller.cc +index f1587ed158..1b17021fd2 100644 +--- a/cc/scheduler/compositor_frame_reporting_controller.cc ++++ b/cc/scheduler/compositor_frame_reporting_controller.cc +@@ -31,8 +31,8 @@ void CompositorFrameReportingController::WillBeginImplFrame() { + + void CompositorFrameReportingController::WillBeginMainFrame() { + DCHECK(reporters_[PipelineStage::kBeginImplFrame]); +- DCHECK_NE(reporters_[PipelineStage::kBeginMainFrame], +- reporters_[PipelineStage::kBeginImplFrame]); ++ DCHECK(reporters_[PipelineStage::kBeginMainFrame] != ++ reporters_[PipelineStage::kBeginImplFrame]); + reporters_[PipelineStage::kBeginImplFrame]->StartStage( + "SendBeginMainFrameToCommit"); + AdvanceReporterStage(PipelineStage::kBeginImplFrame, |