[arch-commits] Commit in chromium/trunk (2 files)
Evangelos Foutras
foutrelis at archlinux.org
Tue Jul 31 06:21:17 UTC 2018
Date: Tuesday, July 31, 2018 @ 06:21:17
Author: foutrelis
Revision: 329704
Re-enable cfi-icall
Added:
chromium/trunk/fix-cfi-icall-failure-with-use_system_libjpeg-true.patch
Modified:
chromium/trunk/PKGBUILD
----------------------------------------------------------+
PKGBUILD | 6 +
fix-cfi-icall-failure-with-use_system_libjpeg-true.patch | 52 +++++++++++++
2 files changed, 57 insertions(+), 1 deletion(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2018-07-30 23:19:02 UTC (rev 329703)
+++ PKGBUILD 2018-07-31 06:21:17 UTC (rev 329704)
@@ -26,6 +26,7 @@
chromium-launcher-$_launcher_ver.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver.tar.gz
x11-fix-mixup-between-DIP-pixel-coordinates.patch
blink-disable-XML-catalogs-at-runtime.patch
+ fix-cfi-icall-failure-with-use_system_libjpeg-true.patch
chromium-cors-string-r0.patch
chromium-ffmpeg-r1.patch
chromium-libjpeg-r0.patch
@@ -36,6 +37,7 @@
'04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1'
'e2c2754536243a60fa70541bbd4121715eccd83caa8f1fb1873bd994cd81f871'
'98a5c41cf9687c52ee380d2b683c95387334c76254479c347bdb733646dab815'
+ '97b421bc60a4abdf37de2d88a51b973e9f68fb44d1eccd464adfb3d9f5d71478'
'f4141e48a25a1403250e9040c18936a16250ab707064dd54103066f40c7db41c'
'aa885330bc4180b78d915f9dfdfc3210038a0acab7b16735ea9828ab6a633bde'
'6b8fc570607631d3558e99a82e92c11eeae9c960ebb0a83c13d46344d4b6adca'
@@ -91,6 +93,9 @@
# https://crbug.com/736026
patch -Np1 -i ../blink-disable-XML-catalogs-at-runtime.patch
+ # https://crbug.com/866290
+ patch -Np1 -i ../fix-cfi-icall-failure-with-use_system_libjpeg-true.patch
+
# https://crbug.com/skia/6663#c10
patch -Np4 -i ../chromium-skia-harmony.patch
@@ -149,7 +154,6 @@
'host_toolchain="//build/toolchain/linux/unbundle:default"'
'clang_use_chrome_plugins=false'
'is_official_build=true' # implies is_cfi=true on x86_64
- 'use_cfi_icall=false' # https://crbug.com/866290
'is_debug=false'
'treat_warnings_as_errors=false'
'fieldtrial_testing_like_official_build=true'
Added: fix-cfi-icall-failure-with-use_system_libjpeg-true.patch
===================================================================
--- fix-cfi-icall-failure-with-use_system_libjpeg-true.patch (rev 0)
+++ fix-cfi-icall-failure-with-use_system_libjpeg-true.patch 2018-07-31 06:21:17 UTC (rev 329704)
@@ -0,0 +1,52 @@
+From db82db1b609f30d144d45477f55697818bcd363c Mon Sep 17 00:00:00 2001
+From: Vlad Tsyrklevich <vtsyrklevich at chromium.org>
+Date: Tue, 31 Jul 2018 01:03:22 +0000
+Subject: [PATCH] Fix cfi-icall failure with use_system_libjpeg=true
+
+JPEGImageReader::AllocateSampleArray() can call the function pointer
+(*info_.mem->alloc_sarray) which can be set by the systems non-CFI
+enabled libjpeg DSO when chromium is built with use_system_libjpeg=true.
+Disable cfi-icall for that method.
+
+Bug: 866290
+Change-Id: I6d9bbf08c514d6d5f48ad34c3802c63419ed1223
+Reviewed-on: https://chromium-review.googlesource.com/1155927
+Reviewed-by: Kentaro Hara <haraken at chromium.org>
+Commit-Queue: Vlad Tsyrklevich <vtsyrklevich at chromium.org>
+Cr-Commit-Position: refs/heads/master@{#579270}
+---
+ .../renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc | 2 +-
+ third_party/blink/renderer/platform/wtf/compiler.h | 2 ++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc b/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
+index a1e440f6eed5..fd4e72ba053c 100644
+--- a/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
++++ b/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
+@@ -643,7 +643,7 @@ class JPEGImageReader final {
+ IntSize UvSize() const { return uv_size_; }
+
+ private:
+- JSAMPARRAY AllocateSampleArray() {
++ NO_SANITIZE_CFI_ICALL JSAMPARRAY AllocateSampleArray() {
+ // Some output color spaces don't need the sample array: don't allocate in that
+ // case.
+ #if defined(TURBO_JPEG_RGB_SWIZZLE)
+diff --git a/third_party/blink/renderer/platform/wtf/compiler.h b/third_party/blink/renderer/platform/wtf/compiler.h
+index 51595afdc955..5225a70309d6 100644
+--- a/third_party/blink/renderer/platform/wtf/compiler.h
++++ b/third_party/blink/renderer/platform/wtf/compiler.h
+@@ -57,8 +57,10 @@
+ #if defined(__clang__)
+ #define NO_SANITIZE_UNRELATED_CAST \
+ __attribute__((no_sanitize("cfi-unrelated-cast", "vptr")))
++#define NO_SANITIZE_CFI_ICALL __attribute__((no_sanitize("cfi-icall")))
+ #else
+ #define NO_SANITIZE_UNRELATED_CAST
++#define NO_SANITIZE_CFI_ICALL
+ #endif
+
+ #endif /* WTF_Compiler_h */
+--
+2.18.0
+
More information about the arch-commits
mailing list