Hello community, here is the log from the commit of package chromium for openSUSE:Factory checked in at 2020-04-13 12:50:09 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/chromium (Old) and /work/SRC/openSUSE:Factory/.chromium.new.3248 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "chromium" Mon Apr 13 12:50:09 2020 rev:252 rq:792388 version:81.0.4044.92 Changes: -------- --- /work/SRC/openSUSE:Factory/chromium/chromium.changes 2020-04-07 10:23:01.725943038 +0200 +++ /work/SRC/openSUSE:Factory/.chromium.new.3248/chromium.changes 2020-04-13 12:50:45.396582009 +0200 @@ -1,0 +2,51 @@ +Wed Apr 8 08:41:17 UTC 2020 - Tomáš Chvátal <[email protected]> + +- Update to 81.0.4044.92 bsc#1168911: + * CVE-2020-6454: Use after free in extensions + * CVE-2020-6423: Use after free in audio + * CVE-2020-6455: Out of bounds read in WebSQL + * CVE-2020-6430: Type Confusion in V8 + * CVE-2020-6456: Insufficient validation of untrusted input in clipboard + * CVE-2020-6431: Insufficient policy enforcement in full screen + * CVE-2020-6432: Insufficient policy enforcement in navigations + * CVE-2020-6433: Insufficient policy enforcement in extensions + * CVE-2020-6434: Use after free in devtools + * CVE-2020-6435: Insufficient policy enforcement in extensions + * CVE-2020-6436: Use after free in window management + * CVE-2020-6437: Inappropriate implementation in WebView + * CVE-2020-6438: Insufficient policy enforcement in extensions + * CVE-2020-6439: Insufficient policy enforcement in navigations + * CVE-2020-6440: Inappropriate implementation in extensions + * CVE-2020-6441: Insufficient policy enforcement in omnibox + * CVE-2020-6442: Inappropriate implementation in cache + * CVE-2020-6443: Insufficient data validation in developer tools + * CVE-2020-6444: Uninitialized Use in WebRTC + * CVE-2020-6445: Insufficient policy enforcement in trusted types + * CVE-2020-6446: Insufficient policy enforcement in trusted types + * CVE-2020-6447: Inappropriate implementation in developer tools + * CVE-2020-6448: Use after free in V8 +- Add new patches: + * chromium-81-gcc-constexpr.patch + * chromium-81-gcc-noexcept.patch + * fix-vaapi-with-glx.patch +- Remove no longer needed patches: + * chromium-80-gcc-abstract.patch + * chromium-80-gcc-incomplete-type.patch + * chromium-80-gcc-permissive.patch + * chromium-80-include.patch + * chromium-80-unbundle-libxml.patch + * chromium-missing-cstddef-header.patch + * chromium-missing-cstdint-header.patch + * chromium-missing-cstring-header.patch + * chromium-missing-cstring-header2.patch + * chromium-system-icu.patch + * chromium-unbundle-zlib.patch + * webrtc-pulse.patch +- Rebase patches: + * build-with-pipewire-0.3.patch + * chromium-vaapi-fix.patch + * chromium-vaapi.patch + * gpu-timeout.patch + * old-libva.patch + +------------------------------------------------------------------- Old: ---- chromium-80-gcc-abstract.patch chromium-80-gcc-incomplete-type.patch chromium-80-gcc-permissive.patch chromium-80-include.patch chromium-80-unbundle-libxml.patch chromium-80.0.3987.162.tar.xz chromium-missing-cstddef-header.patch chromium-missing-cstdint-header.patch chromium-missing-cstring-header.patch chromium-missing-cstring-header2.patch chromium-system-icu.patch chromium-unbundle-zlib.patch webrtc-pulse.patch New: ---- chromium-81-gcc-constexpr.patch chromium-81-gcc-noexcept.patch chromium-81.0.4044.92.tar.xz fix-vaapi-with-glx.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ chromium.spec ++++++ --- /var/tmp/diff_new_pack.jvTeJN/_old 2020-04-13 12:51:01.556589046 +0200 +++ /var/tmp/diff_new_pack.jvTeJN/_new 2020-04-13 12:51:01.560589048 +0200 @@ -29,17 +29,10 @@ %bcond_without system_icu %bcond_without system_harfbuzz %bcond_without pipewire -%bcond_without pipewire0_3 %else %bcond_with system_icu %bcond_with system_harfbuzz -%if 0%{?sle_version} >= 150200 -%bcond_without pipewire -%bcond_without pipewire0_3 -%else %bcond_with pipewire -%bcond_with pipewire0_3 -%endif %endif %if 0%{?suse_version} >= 1500 %bcond_without system_libxml @@ -64,7 +57,7 @@ %bcond_with clang %bcond_with wayland Name: chromium -Version: 80.0.3987.162 +Version: 81.0.4044.92 Release: 0 Summary: Google's open source browser project License: BSD-3-Clause AND LGPL-2.1-or-later @@ -87,26 +80,18 @@ Patch4: chromium-dma-buf.patch Patch5: chromium-buildname.patch Patch6: chromium-drm.patch -Patch8: chromium-system-icu.patch Patch9: chromium-system-libusb.patch Patch10: gcc-enable-lto.patch -Patch11: chromium-unbundle-zlib.patch -Patch12: chromium-old-glibc-noexcept.patch -Patch13: chromium-79-gcc-alignas.patch -Patch14: chromium-80-gcc-abstract.patch -Patch15: chromium-80-gcc-blink.patch -Patch16: chromium-80-gcc-incomplete-type.patch -Patch17: chromium-80-gcc-permissive.patch -Patch18: chromium-80-gcc-quiche.patch -Patch19: chromium-80-include.patch -Patch20: chromium-80-unbundle-libxml.patch -Patch21: chromium-fix-char_traits.patch -Patch22: gpu-timeout.patch -Patch23: webrtc-pulse.patch -Patch24: chromium-missing-cstring-header.patch -Patch25: chromium-missing-cstring-header2.patch -Patch26: chromium-missing-cstddef-header.patch -Patch27: chromium-missing-cstdint-header.patch +Patch11: chromium-old-glibc-noexcept.patch +Patch12: chromium-79-gcc-alignas.patch +Patch13: chromium-80-gcc-blink.patch +Patch14: chromium-80-gcc-quiche.patch +Patch15: chromium-fix-char_traits.patch +Patch16: gpu-timeout.patch +Patch17: chromium-81-gcc-constexpr.patch +Patch18: chromium-81-gcc-noexcept.patch +Patch19: build-with-pipewire-0.3.patch +Patch20: fix-vaapi-with-glx.patch # Google seem not too keen on merging this but GPU accel is quite important # https://chromium-review.googlesource.com/c/chromium/src/+/532294 # https://github.com/saiarcot895/chromium-ubuntu-build/tree/master/debian/patches @@ -115,7 +100,6 @@ Patch100: chromium-vaapi.patch Patch101: old-libva.patch Patch102: chromium-vaapi-fix.patch -Patch103: build-with-pipewire-0.3.patch # PATCH-FIX-SUSE: allow prop codecs to be set with chromium branding Patch200: chromium-prop-codecs.patch BuildRequires: SDL-devel @@ -160,6 +144,7 @@ BuildRequires: pkgconfig(expat) BuildRequires: pkgconfig(flac++) BuildRequires: pkgconfig(freetype2) +BuildRequires: pkgconfig(gbm) BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(gtk+-2.0) BuildRequires: pkgconfig(gtk+-3.0) @@ -200,6 +185,7 @@ BuildRequires: pkgconfig(vdpau) BuildRequires: pkgconfig(vorbis) BuildRequires: pkgconfig(x11) +BuildRequires: pkgconfig(xcb-dri3) BuildRequires: pkgconfig(xcomposite) BuildRequires: pkgconfig(xcursor) BuildRequires: pkgconfig(xdamage) @@ -233,14 +219,9 @@ # no 32bit supported and it takes ages to build ExcludeArch: %{ix86} %{arm} ppc ppc64 ppc64le s390 s390x %if %{with pipewire} -%if %{with pipewire0_3} BuildRequires: pkgconfig(libpipewire-0.3) -%else -BuildRequires: pkgconfig(libpipewire-0.2) -%endif %endif %if %{with wayland} -BuildRequires: pkgconfig(gbm) BuildRequires: pkgconfig(wayland-client) BuildRequires: pkgconfig(wayland-cursor) BuildRequires: pkgconfig(wayland-scanner) @@ -297,11 +278,6 @@ %setup -q -n %{rname}-%{version} %autopatch -p1 -# unpatch the system zlib on old systems -%if %{with sle_bundles} -%patch11 -p1 -R -%endif - # Fix the path to nodejs binary mkdir -p third_party/node/linux/node-linux-x64/bin ln -s %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node @@ -335,6 +311,7 @@ third_party/angle/src/third_party/compiler third_party/angle/src/third_party/libXNVCtrl third_party/angle/src/third_party/trace_event + third_party/angle/src/third_party/volk third_party/angle/third_party/glslang third_party/angle/third_party/spirv-headers third_party/angle/third_party/spirv-tools @@ -379,6 +356,8 @@ third_party/depot_tools/third_party/six third_party/devscripts third_party/devtools-frontend + third_party/devtools-frontend/src/front_end/third_party/fabricjs + third_party/devtools-frontend/src/front_end/third_party/wasmparser third_party/devtools-frontend/src/third_party third_party/dom_distiller_js third_party/emoji-segmenter @@ -449,7 +428,6 @@ third_party/qcms third_party/rnnoise third_party/s2cellid - third_party/sfntly third_party/simplejson third_party/skia third_party/skia/third_party/skcms @@ -470,8 +448,6 @@ third_party/unrar third_party/usrsctp third_party/vulkan - third_party/wayland - third_party/wayland-protocols third_party/web-animations-js third_party/webdriver third_party/webrtc @@ -494,6 +470,13 @@ v8/third_party/inspector_protocol v8/third_party/v8/builtins ) +%if %{with wayland} +keeplibs+=( + third_party/mingbm + third_party/wayland + third_party/wayland-protocols +) +%endif %if %{with sle_bundles} keeplibs+=( third_party/libwebp @@ -658,6 +641,7 @@ myconf_gn+=" treat_warnings_as_errors=false" myconf_gn+=" enable_widevine=true" myconf_gn+=" use_dbus=true" +myconf_gn+=" use_system_minigbm=true" # See dependency logic in third_party/BUILD.gn %if %{with system_harfbuzz} myconf_gn+=" use_system_harfbuzz=true" @@ -668,13 +652,11 @@ myconf_gn+=" enable_hevc_demuxing=true" %if %{with pipewire} myconf_gn+=" rtc_use_pipewire=true rtc_link_pipewire=true" -%if %{with pipewire0_3} myconf_gn+=" rtc_use_pipewire_version=\"0.3\"" %endif -%endif # ozone stuff %if %{with wayland} -myconf_gn+=" use_ozone=true use_xkbcommon=true use_system_minigbm=true use_v4lplugin=true use_v4l2_codec=true use_linux_v4l2_only=true" +myconf_gn+=" use_ozone=true use_xkbcommon=true use_v4lplugin=true use_v4l2_codec=true use_linux_v4l2_only=true" %endif %if %{with clang} myconf_gn+=" is_clang=true clang_base_path=\"/usr\" clang_use_chrome_plugins=false" ++++++ build-with-pipewire-0.3.patch ++++++ --- /var/tmp/diff_new_pack.jvTeJN/_old 2020-04-13 12:51:01.604589067 +0200 +++ /var/tmp/diff_new_pack.jvTeJN/_new 2020-04-13 12:51:01.604589067 +0200 @@ -1,8 +1,8 @@ -Index: chromium-80.0.3987.132/third_party/webrtc/modules/desktop_capture/BUILD.gn +Index: chromium-81.0.4044.83/third_party/webrtc/modules/desktop_capture/BUILD.gn =================================================================== ---- chromium-80.0.3987.132.orig/third_party/webrtc/modules/desktop_capture/BUILD.gn -+++ chromium-80.0.3987.132/third_party/webrtc/modules/desktop_capture/BUILD.gn -@@ -190,7 +190,7 @@ if (is_linux) { +--- chromium-81.0.4044.83.orig/third_party/webrtc/modules/desktop_capture/BUILD.gn ++++ chromium-81.0.4044.83/third_party/webrtc/modules/desktop_capture/BUILD.gn +@@ -196,7 +196,7 @@ if (is_linux) { if (rtc_link_pipewire) { pkg_config("pipewire") { @@ -11,10 +11,10 @@ } } else { # When libpipewire is not directly linked, use stubs to allow for dlopening of -Index: chromium-80.0.3987.132/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc +Index: chromium-81.0.4044.83/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc =================================================================== ---- chromium-80.0.3987.132.orig/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc -+++ chromium-80.0.3987.132/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc +--- chromium-81.0.4044.83.orig/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc ++++ chromium-81.0.4044.83/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc @@ -14,8 +14,13 @@ #include <glib-object.h> #include <spa/param/format-utils.h> @@ -27,8 +27,8 @@ #include <spa/support/type-map.h> +#endif - #include <cstring> #include <memory> + #include <utility> @@ -51,6 +56,21 @@ const char kPipeWireLib[] = "libpipewire #endif @@ -379,10 +379,10 @@ uint8_t* tempFrame = static_cast<uint8_t*>(malloc(maxSize)); std::memcpy(tempFrame, src, maxSize); ConvertRGBxToBGRx(tempFrame, maxSize); -Index: chromium-80.0.3987.132/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.h +Index: chromium-81.0.4044.83/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.h =================================================================== ---- chromium-80.0.3987.132.orig/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.h -+++ chromium-80.0.3987.132/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.h +--- chromium-81.0.4044.83.orig/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.h ++++ chromium-81.0.4044.83/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.h @@ -22,6 +22,7 @@ namespace webrtc { @@ -466,10 +466,10 @@ static void OnStreamProcess(void* data); static void OnNewBuffer(void* data, uint32_t id); -Index: chromium-80.0.3987.132/third_party/webrtc/webrtc.gni +Index: chromium-81.0.4044.83/third_party/webrtc/webrtc.gni =================================================================== ---- chromium-80.0.3987.132.orig/third_party/webrtc/webrtc.gni -+++ chromium-80.0.3987.132/third_party/webrtc/webrtc.gni +--- chromium-81.0.4044.83.orig/third_party/webrtc/webrtc.gni ++++ chromium-81.0.4044.83/third_party/webrtc/webrtc.gni @@ -114,6 +114,9 @@ declare_args() { # supported Ubuntu and Debian distributions. rtc_use_pipewire = is_desktop_linux && use_sysroot ++++++ chromium-81-gcc-constexpr.patch ++++++ diff --git a/ui/views/layout/layout_types.h b/ui/views/layout/layout_types.h index 8f9dbf4..ba118b9 100644 --- a/ui/views/layout/layout_types.h +++ b/ui/views/layout/layout_types.h @@ -45,12 +45,12 @@ class VIEWS_EXPORT SizeBounds { ~SizeBounds() = default; constexpr const base::Optional<int>& width() const { return width_; } - constexpr void set_width(base::Optional<int> width) { + inline void set_width(base::Optional<int> width) { width_ = std::move(width); } constexpr const base::Optional<int>& height() const { return height_; } - constexpr void set_height(base::Optional<int> height) { + inline void set_height(base::Optional<int> height) { height_ = std::move(height); } ++++++ chromium-81-gcc-noexcept.patch ++++++ diff --git a/components/paint_preview/browser/paint_preview_client.cc b/components/paint_preview/browser/paint_preview_client.cc index 38ab6be..dccf07f 100644 --- a/components/paint_preview/browser/paint_preview_client.cc +++ b/components/paint_preview/browser/paint_preview_client.cc @@ -78,7 +78,7 @@ PaintPreviewClient::PaintPreviewData::PaintPreviewData() = default; PaintPreviewClient::PaintPreviewData::~PaintPreviewData() = default; PaintPreviewClient::PaintPreviewData& PaintPreviewClient::PaintPreviewData:: -operator=(PaintPreviewData&& rhs) noexcept = default; +operator=(PaintPreviewData&& rhs) = default; PaintPreviewClient::PaintPreviewData::PaintPreviewData( PaintPreviewData&& other) noexcept = default; ++++++ chromium-80.0.3987.162.tar.xz -> chromium-81.0.4044.92.tar.xz ++++++ /work/SRC/openSUSE:Factory/chromium/chromium-80.0.3987.162.tar.xz /work/SRC/openSUSE:Factory/.chromium.new.3248/chromium-81.0.4044.92.tar.xz differ: char 26, line 1 ++++++ chromium-vaapi-fix.patch ++++++ --- /var/tmp/diff_new_pack.jvTeJN/_old 2020-04-13 12:51:01.704589110 +0200 +++ /var/tmp/diff_new_pack.jvTeJN/_new 2020-04-13 12:51:01.704589110 +0200 @@ -2,9 +2,11 @@ author: Maxim Baz origin: chromium-vaapi patches from Arch linux ---- a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc -+++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc -@@ -641,6 +641,7 @@ void VaapiVideoDecodeAccelerator::Assign +Index: chromium-81.0.4044.43/media/gpu/vaapi/vaapi_video_decode_accelerator.cc +=================================================================== +--- chromium-81.0.4044.43.orig/media/gpu/vaapi/vaapi_video_decode_accelerator.cc ++++ chromium-81.0.4044.43/media/gpu/vaapi/vaapi_video_decode_accelerator.cc +@@ -712,6 +712,7 @@ void VaapiVideoDecodeAccelerator::Assign // |vpp_vaapi_wrapper_| for VaapiPicture to DownloadFromSurface() the VA's // internal decoded frame. if (buffer_allocation_mode_ != BufferAllocationMode::kNone && @@ -12,17 +14,17 @@ !vpp_vaapi_wrapper_) { vpp_vaapi_wrapper_ = VaapiWrapper::Create( VaapiWrapper::kVideoProcess, VAProfileNone, -@@ -665,7 +666,8 @@ void VaapiVideoDecodeAccelerator::Assign - PictureBuffer buffer = buffers[i]; - buffer.set_size(requested_pic_size_); +@@ -743,7 +744,8 @@ void VaapiVideoDecodeAccelerator::Assign + : gfx::Size(); + std::unique_ptr<VaapiPicture> picture = vaapi_picture_factory_->Create( - (buffer_allocation_mode_ == BufferAllocationMode::kNone) + ((buffer_allocation_mode_ == BufferAllocationMode::kNone) || + (buffer_allocation_mode_ == BufferAllocationMode::kWrapVdpau)) ? vaapi_wrapper_ : vpp_vaapi_wrapper_, - make_context_current_cb_, bind_image_cb_, buffer); -@@ -1093,6 +1095,14 @@ VaapiVideoDecodeAccelerator::GetSupporte + make_context_current_cb_, bind_image_cb_, buffer, size_to_bind); +@@ -1199,6 +1201,14 @@ VaapiVideoDecodeAccelerator::GetSupporte VaapiVideoDecodeAccelerator::BufferAllocationMode VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() { @@ -37,7 +39,7 @@ // TODO(crbug.com/912295): Enable a better BufferAllocationMode for IMPORT // |output_mode_| as well. if (output_mode_ == VideoDecodeAccelerator::Config::OutputMode::IMPORT) -@@ -1105,7 +1115,7 @@ VaapiVideoDecodeAccelerator::DecideBuffe +@@ -1211,7 +1221,7 @@ VaapiVideoDecodeAccelerator::DecideBuffe // depends on the bitstream and sometimes it's not enough to cover the amount // of frames needed by the client pipeline (see b/133733739). // TODO(crbug.com/911754): Enable for VP9 Profile 2. @@ -46,9 +48,11 @@ (profile_ == VP9PROFILE_PROFILE0 || profile_ == VP8PROFILE_ANY)) { // Add one to the reference frames for the one being currently egressed, and // an extra allocation for both |client_| and |decoder_|, see ---- a/media/gpu/vaapi/vaapi_video_decode_accelerator.h -+++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.h -@@ -204,6 +204,7 @@ class MEDIA_GPU_EXPORT VaapiVideoDecodeA +Index: chromium-81.0.4044.43/media/gpu/vaapi/vaapi_video_decode_accelerator.h +=================================================================== +--- chromium-81.0.4044.43.orig/media/gpu/vaapi/vaapi_video_decode_accelerator.h ++++ chromium-81.0.4044.43/media/gpu/vaapi/vaapi_video_decode_accelerator.h +@@ -208,6 +208,7 @@ class MEDIA_GPU_EXPORT VaapiVideoDecodeA // Using |client_|s provided PictureBuffers and as many internally // allocated. kNormal, @@ -56,9 +60,11 @@ }; // Decides the concrete buffer allocation mode, depending on the hardware ---- a/media/gpu/vaapi/vaapi_wrapper.cc -+++ b/media/gpu/vaapi/vaapi_wrapper.cc -@@ -1072,6 +1072,11 @@ VAImplementation VaapiWrapper::GetImplem +Index: chromium-81.0.4044.43/media/gpu/vaapi/vaapi_wrapper.cc +=================================================================== +--- chromium-81.0.4044.43.orig/media/gpu/vaapi/vaapi_wrapper.cc ++++ chromium-81.0.4044.43/media/gpu/vaapi/vaapi_wrapper.cc +@@ -1137,6 +1137,11 @@ VAImplementation VaapiWrapper::GetImplem } // static @@ -70,8 +76,10 @@ scoped_refptr<VaapiWrapper> VaapiWrapper::Create( CodecMode mode, VAProfile va_profile, ---- a/media/gpu/vaapi/vaapi_wrapper.h -+++ b/media/gpu/vaapi/vaapi_wrapper.h +Index: chromium-81.0.4044.43/media/gpu/vaapi/vaapi_wrapper.h +=================================================================== +--- chromium-81.0.4044.43.orig/media/gpu/vaapi/vaapi_wrapper.h ++++ chromium-81.0.4044.43/media/gpu/vaapi/vaapi_wrapper.h @@ -119,6 +119,9 @@ class MEDIA_GPU_EXPORT VaapiWrapper // Returns the type of the underlying VA-API implementation. static VAImplementation GetImplementationType(); ++++++ chromium-vaapi.patch ++++++ --- /var/tmp/diff_new_pack.jvTeJN/_old 2020-04-13 12:51:01.716589116 +0200 +++ /var/tmp/diff_new_pack.jvTeJN/_new 2020-04-13 12:51:01.716589116 +0200 @@ -1,8 +1,8 @@ -Index: chromium-80.0.3987.87/chrome/browser/about_flags.cc +Index: chromium-81.0.4040.5/chrome/browser/about_flags.cc =================================================================== ---- chromium-80.0.3987.87.orig/chrome/browser/about_flags.cc -+++ chromium-80.0.3987.87/chrome/browser/about_flags.cc -@@ -1865,7 +1865,7 @@ const FeatureEntry kFeatureEntries[] = { +--- chromium-81.0.4040.5.orig/chrome/browser/about_flags.cc ++++ chromium-81.0.4040.5/chrome/browser/about_flags.cc +@@ -1876,7 +1876,7 @@ const FeatureEntry kFeatureEntries[] = { "disable-accelerated-video-decode", flag_descriptions::kAcceleratedVideoDecodeName, flag_descriptions::kAcceleratedVideoDecodeDescription, @@ -11,7 +11,7 @@ SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode), }, { -@@ -2325,10 +2325,10 @@ const FeatureEntry kFeatureEntries[] = { +@@ -2311,10 +2311,10 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)}, #endif // !defined(OS_ANDROID) #endif // ENABLE_VR @@ -24,11 +24,11 @@ SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)}, #endif // OS_CHROMEOS {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName, -Index: chromium-80.0.3987.87/chrome/browser/flag_descriptions.cc +Index: chromium-81.0.4040.5/chrome/browser/flag_descriptions.cc =================================================================== ---- chromium-80.0.3987.87.orig/chrome/browser/flag_descriptions.cc -+++ chromium-80.0.3987.87/chrome/browser/flag_descriptions.cc -@@ -3160,15 +3160,20 @@ const char kMetalDescription[] = +--- chromium-81.0.4040.5.orig/chrome/browser/flag_descriptions.cc ++++ chromium-81.0.4040.5/chrome/browser/flag_descriptions.cc +@@ -3181,15 +3181,20 @@ const char kMetalDescription[] = #endif @@ -51,11 +51,11 @@ const char kAggregatedMlAppRankingName[] = "Rank suggested apps with ML."; const char kAggregatedMlAppRankingDescription[] = -Index: chromium-80.0.3987.87/chrome/browser/flag_descriptions.h +Index: chromium-81.0.4040.5/chrome/browser/flag_descriptions.h =================================================================== ---- chromium-80.0.3987.87.orig/chrome/browser/flag_descriptions.h -+++ chromium-80.0.3987.87/chrome/browser/flag_descriptions.h -@@ -1863,11 +1863,15 @@ extern const char kPermissionPromptPersi +--- chromium-81.0.4040.5.orig/chrome/browser/flag_descriptions.h ++++ chromium-81.0.4040.5/chrome/browser/flag_descriptions.h +@@ -1882,11 +1882,15 @@ extern const char kPermissionPromptPersi // Chrome OS ------------------------------------------------------------------ @@ -72,21 +72,50 @@ extern const char kAggregatedMlAppRankingName[]; extern const char kAggregatedMlAppRankingDescription[]; -Index: chromium-80.0.3987.87/gpu/config/software_rendering_list.json +Index: chromium-81.0.4040.5/gpu/config/software_rendering_list.json =================================================================== ---- chromium-80.0.3987.87.orig/gpu/config/software_rendering_list.json -+++ chromium-80.0.3987.87/gpu/config/software_rendering_list.json -@@ -334,11 +334,12 @@ +--- chromium-81.0.4040.5.orig/gpu/config/software_rendering_list.json ++++ chromium-81.0.4040.5/gpu/config/software_rendering_list.json +@@ -337,7 +337,7 @@ }, { "id": 48, - "description": "Accelerated video decode is unavailable on Linux", + "description": "Accelerated VA-API video decode is not supported on NVIDIA platforms", - "cr_bugs": [137247], + "cr_bugs": [137247, 1032907], "os": { "type": "linux" - }, +@@ -347,6 +347,7 @@ + "machine_model_name": ["Chromecast"] + } + ], + "vendor_id": "0x10de", "features": [ "accelerated_video_decode" ] +Index: beta/media/gpu/test/BUILD.gn +=================================================================== +--- beta.orig/media/gpu/test/BUILD.gn ++++ beta/media/gpu/test/BUILD.gn +@@ -150,7 +150,7 @@ if (use_vaapi || use_v4l2_codec) { + } + } + +-if (is_chromeos) { ++if (is_chromeos || use_vaapi) { + static_library("local_gpu_memory_buffer_manager") { + testonly = true + sources = [ +Index: beta/media/mojo/services/gpu_mojo_media_client.cc +=================================================================== +--- beta.orig/media/mojo/services/gpu_mojo_media_client.cc ++++ beta/media/mojo/services/gpu_mojo_media_client.cc +@@ -157,7 +157,7 @@ GpuMojoMediaClient::GetSupportedVideoDec + supported_config_map[VideoDecoderImplementation::kAlternate] = + *d3d11_supported_configs_; + +-#elif BUILDFLAG(USE_CHROMEOS_MEDIA_ACCELERATION) ++#elif defined(OS_CHROMEOS) && BUILDFLAG(USE_CHROMEOS_MEDIA_ACCELERATION) + if (base::FeatureList::IsEnabled(kChromeosVideoDecoder)) { + if (!cros_supported_configs_) { + cros_supported_configs_ = ++++++ fix-vaapi-with-glx.patch ++++++ commit 5b2ff215473e0526b5b24aeff4ad90d369b21c75 Author: Julien Isorce <[email protected]> Date: Wed Feb 5 17:59:59 2020 +0000 Fix vaapi with GLX The signature of ui's gl::GLImageGLX has changed a little bit since "mplement GpuMemoryBuffers for EGL and GLX": https://chromium-review.googlesource.com/c/chromium/src/+/1984712 Bug: 1031269 Test: build with use_vaapi=true and run with --use-gl=desktop, see Change-Id: I80b07294b9abdfa8233aaf79f7d9ec4c58117090 https: //chromium.googlesource.com/chromium/src.git/+/refs/heads/master/docs/gpu/vaapi.md#vaapi-on-linux Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2036494 Reviewed-by: Thomas Anderson <[email protected]> Reviewed-by: Miguel Casas <[email protected]> Commit-Queue: Julien Isorce <[email protected]> Cr-Commit-Position: refs/heads/master@{#738595} Index: beta/media/gpu/vaapi/vaapi_picture_tfp.cc =================================================================== --- beta.orig/media/gpu/vaapi/vaapi_picture_tfp.cc +++ beta/media/gpu/vaapi/vaapi_picture_tfp.cc @@ -57,7 +57,7 @@ bool VaapiTFPPicture::Initialize() { if (make_context_current_cb_ && !make_context_current_cb_.Run()) return false; - glx_image_ = new gl::GLImageGLX(size_, GL_RGB); + glx_image_ = new gl::GLImageGLX(size_, gfx::BufferFormat::BGRX_8888); if (!glx_image_->Initialize(x_pixmap_)) { // x_pixmap_ will be freed in the destructor. DLOG(ERROR) << "Failed creating a GLX Pixmap for TFP"; ++++++ gpu-timeout.patch ++++++ --- /var/tmp/diff_new_pack.jvTeJN/_old 2020-04-13 12:51:01.760589135 +0200 +++ /var/tmp/diff_new_pack.jvTeJN/_new 2020-04-13 12:51:01.760589135 +0200 @@ -2,9 +2,11 @@ author: Chad MILLER <[email protected]> bug-debian: http://bugs.debian.org/781940 ---- a/gpu/ipc/service/gpu_watchdog_thread.cc -+++ b/gpu/ipc/service/gpu_watchdog_thread.cc -@@ -37,7 +37,7 @@ const int kGpuTimeout = 30000; +Index: chromium-81.0.4040.5/gpu/ipc/service/gpu_watchdog_thread.cc +=================================================================== +--- chromium-81.0.4040.5.orig/gpu/ipc/service/gpu_watchdog_thread.cc ++++ chromium-81.0.4040.5/gpu/ipc/service/gpu_watchdog_thread.cc +@@ -39,7 +39,7 @@ const int kGpuTimeout = 30000; // hangs at context creation during startup. See https://crbug.com/918490. const int kGpuTimeout = 15000; #else @@ -12,4 +14,4 @@ +const int kGpuTimeout = 20000; #endif - #if defined(USE_X11) + // The same set of timeouts from Watchdog V2 so we can compare the results ++++++ old-libva.patch ++++++ --- /var/tmp/diff_new_pack.jvTeJN/_old 2020-04-13 12:51:01.792589150 +0200 +++ /var/tmp/diff_new_pack.jvTeJN/_new 2020-04-13 12:51:01.792589150 +0200 @@ -1,7 +1,7 @@ -Index: chromium-79.0.3945.36/media/gpu/vaapi/vaapi_wrapper.cc +Index: chromium-81.0.4040.5/media/gpu/vaapi/vaapi_wrapper.cc =================================================================== ---- chromium-79.0.3945.36.orig/media/gpu/vaapi/vaapi_wrapper.cc -+++ chromium-79.0.3945.36/media/gpu/vaapi/vaapi_wrapper.cc +--- chromium-81.0.4040.5.orig/media/gpu/vaapi/vaapi_wrapper.cc ++++ chromium-81.0.4040.5/media/gpu/vaapi/vaapi_wrapper.cc @@ -65,6 +65,10 @@ #include "ui/ozone/public/surface_factory_ozone.h" #endif @@ -13,7 +13,7 @@ using media_gpu_vaapi::kModuleVa; using media_gpu_vaapi::kModuleVa_drm; #if defined(USE_X11) -@@ -367,10 +371,6 @@ bool VADisplayState::Initialize() { +@@ -369,10 +373,6 @@ bool VADisplayState::Initialize() { } bool VADisplayState::InitializeOnce() { @@ -24,7 +24,7 @@ switch (gl::GetGLImplementation()) { case gl::kGLImplementationEGLGLES2: va_display_ = vaGetDisplayDRM(drm_fd_.get()); -@@ -1502,7 +1502,7 @@ VaapiWrapper::ExportVASurfaceAsNativePix +@@ -1508,7 +1508,7 @@ VaapiWrapper::ExportVASurfaceAsNativePix LOG(ERROR) << "Cannot export an invalid surface"; return nullptr; } @@ -33,7 +33,7 @@ VADRMPRIMESurfaceDescriptor descriptor; { base::AutoLock auto_lock(*va_lock_); -@@ -1595,6 +1595,10 @@ VaapiWrapper::ExportVASurfaceAsNativePix +@@ -1601,6 +1601,10 @@ VaapiWrapper::ExportVASurfaceAsNativePix exported_pixmap->pixmap = base::MakeRefCounted<gfx::NativePixmapDmaBuf>( scoped_va_surface.size(), buffer_format, std::move(handle)); return exported_pixmap; @@ -44,10 +44,10 @@ } bool VaapiWrapper::SyncSurface(VASurfaceID va_surface_id) { -Index: chromium-79.0.3945.36/media/gpu/vaapi/vaapi_jpeg_decoder.cc +Index: chromium-81.0.4040.5/media/gpu/vaapi/vaapi_jpeg_decoder.cc =================================================================== ---- chromium-79.0.3945.36.orig/media/gpu/vaapi/vaapi_jpeg_decoder.cc -+++ chromium-79.0.3945.36/media/gpu/vaapi/vaapi_jpeg_decoder.cc +--- chromium-81.0.4040.5.orig/media/gpu/vaapi/vaapi_jpeg_decoder.cc ++++ chromium-81.0.4040.5/media/gpu/vaapi/vaapi_jpeg_decoder.cc @@ -20,6 +20,10 @@ #include "media/parsers/jpeg_parser.h" #include "ui/gfx/geometry/size.h" @@ -59,10 +59,10 @@ namespace media { namespace { -Index: chromium-79.0.3945.36/media/gpu/vaapi/vaapi_mjpeg_decode_accelerator.cc +Index: chromium-81.0.4040.5/media/gpu/vaapi/vaapi_mjpeg_decode_accelerator.cc =================================================================== ---- chromium-79.0.3945.36.orig/media/gpu/vaapi/vaapi_mjpeg_decode_accelerator.cc -+++ chromium-79.0.3945.36/media/gpu/vaapi/vaapi_mjpeg_decode_accelerator.cc +--- chromium-81.0.4040.5.orig/media/gpu/vaapi/vaapi_mjpeg_decode_accelerator.cc ++++ chromium-81.0.4040.5/media/gpu/vaapi/vaapi_mjpeg_decode_accelerator.cc @@ -44,6 +44,10 @@ #include "ui/gfx/geometry/size.h" #include "ui/gfx/gpu_memory_buffer.h" @@ -74,11 +74,11 @@ namespace media { namespace { -Index: chromium-79.0.3945.36/media/gpu/chromeos/fourcc.cc +Index: chromium-81.0.4040.5/media/gpu/chromeos/fourcc.cc =================================================================== ---- chromium-79.0.3945.36.orig/media/gpu/chromeos/fourcc.cc -+++ chromium-79.0.3945.36/media/gpu/chromeos/fourcc.cc -@@ -15,6 +15,13 @@ +--- chromium-81.0.4040.5.orig/media/gpu/chromeos/fourcc.cc ++++ chromium-81.0.4040.5/media/gpu/chromeos/fourcc.cc +@@ -16,6 +16,13 @@ #include <va/va.h> #endif // BUILDFLAG(USE_VAAPI) @@ -91,4 +91,4 @@ + namespace media { - Fourcc::Fourcc() : value_(Fourcc::INVALID) {} + Fourcc::Fourcc(Fourcc::Value fourcc) : value_(fourcc) {}
