diff --git a/.chromium.metadata b/.chromium.metadata index 6db5a7b6..e896ac90 100644 --- a/.chromium.metadata +++ b/.chromium.metadata @@ -1,4 +1,4 @@ -ad50492710184ee76beb5c03ada72b57093f6687 SOURCES/chromium-129.0.6668.100-clean.tar.xz +6e7dbeaa5284198421dea22629e07f6c6df18add SOURCES/chromium-130.0.6723.58-clean.tar.xz 7e5d2c7864c5c83ec789b59c77cd9c20d2594916 SOURCES/linux-arm64-0.19.2.tgz dea187019741602d57aaf189a80abba261fbd2aa SOURCES/linux-x64-0.19.2.tgz 3e94bb4f999c636293bc745b02d98e7925da5616 SOURCES/node-v20.6.1-linux-arm64.tar.xz diff --git a/.gitignore b/.gitignore index 39018d7c..4e18c329 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ -SOURCES/chromium-129.0.6668.100-clean.tar.xz +SOURCES/chromium-130.0.6723.58-clean.tar.xz SOURCES/linux-arm64-0.19.2.tgz SOURCES/linux-x64-0.19.2.tgz SOURCES/node-v20.6.1-linux-arm64.tar.xz diff --git a/SOURCES/0001-Add-PPC64-support-for-boringssl.patch b/SOURCES/0001-Add-PPC64-support-for-boringssl.patch index f8e0ded6..ee6cb893 100644 --- a/SOURCES/0001-Add-PPC64-support-for-boringssl.patch +++ b/SOURCES/0001-Add-PPC64-support-for-boringssl.patch @@ -1,7 +1,7 @@ -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/abi_self_test.cc +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/abi_self_test.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/abi_self_test.cc -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/abi_self_test.cc +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/abi_self_test.cc ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/abi_self_test.cc @@ -521,3 +521,289 @@ TEST(ABITest, AArch64) { CHECK_ABI_NO_UNWIND(abi_test_clobber_v15_upper); } @@ -292,10 +292,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/abi_self_test.cc + CHECK_ABI_NO_UNWIND(abi_test_clobber_lr); +} +#endif // OPENSSL_PPC64LE && SUPPORTS_ABI_TEST -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/cpu_ppc64le.c +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/cpu_ppc64le.c =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/cpu_ppc64le.c ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/cpu_ppc64le.c @@ -0,0 +1,38 @@ +/* Copyright (c) 2016, Google Inc. + * @@ -335,10 +335,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/cpu_ppc64le.c +} + +#endif // OPENSSL_PPC64LE -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/crypto.c +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/crypto.c =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/crypto.c -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/crypto.c +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/crypto.c ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/crypto.c @@ -66,6 +66,10 @@ uint32_t OPENSSL_get_ia32cap(int idx) { return OPENSSL_ia32cap_P[idx]; } @@ -350,10 +350,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/crypto.c #elif defined(OPENSSL_ARM) || defined(OPENSSL_AARCH64) #include -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesp8-ppc.pl +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesp8-ppc.pl =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesp8-ppc.pl ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/aes/asm/aesp8-ppc.pl @@ -0,0 +1,3809 @@ +#! /usr/bin/env perl +# Copyright 2014-2018 The OpenSSL Project Authors. All Rights Reserved. @@ -4164,11 +4164,11 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/aes/a +} + +close STDOUT or die "error closing STDOUT: $!"; -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h -@@ -59,6 +59,12 @@ OPENSSL_INLINE int vpaes_capable(void) { +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/aes/internal.h +@@ -61,6 +61,12 @@ OPENSSL_INLINE int vpaes_capable(void) { OPENSSL_INLINE int vpaes_capable(void) { return CRYPTO_is_NEON_capable(); } #endif @@ -4181,22 +4181,22 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/aes/i #endif #endif // !NO_ASM -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/bcm.c +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/bcm.c =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/fipsmodule/bcm.c -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/bcm.c -@@ -102,6 +102,7 @@ - #include "self_check/fips.c" - #include "self_check/self_check.c" - #include "service_indicator/service_indicator.c" -+#include "sha/sha1-altivec.c" - #include "sha/sha1.c" - #include "sha/sha256.c" - #include "sha/sha512.c" -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/bn/bn.c +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/fipsmodule/bcm.c ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/bcm.c +@@ -101,6 +101,7 @@ + #include "self_check/fips.c.inc" + #include "self_check/self_check.c.inc" + #include "service_indicator/service_indicator.c.inc" ++#include "sha/sha1-altivec.c.inc" + #include "sha/sha1.c.inc" + #include "sha/sha256.c.inc" + #include "sha/sha512.c.inc" +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/bn/bn.c.inc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/fipsmodule/bn/bn.c -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/bn/bn.c +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/fipsmodule/bn/bn.c.inc ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/bn/bn.c.inc @@ -384,6 +384,23 @@ int bn_expand(BIGNUM *bn, size_t bits) { } @@ -4221,11 +4221,11 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/bn/bn if ((size_t)bn->width <= words) { if (!bn_wexpand(bn, words)) { return 0; -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.c +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.c.inc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.c -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.c -@@ -1455,6 +1455,8 @@ int EVP_has_aes_hardware(void) { +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.c.inc ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/cipher/e_aes.c.inc +@@ -1456,6 +1456,8 @@ int EVP_has_aes_hardware(void) { return hwaes_capable() && crypto_gcm_clmul_enabled(); #elif defined(OPENSSL_ARM) || defined(OPENSSL_AARCH64) return hwaes_capable() && CRYPTO_is_ARMv8_PMULL_capable(); @@ -4234,10 +4234,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/ciphe #else return 0; #endif -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghashp8-ppc.pl +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghashp8-ppc.pl =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghashp8-ppc.pl ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/modes/asm/ghashp8-ppc.pl @@ -0,0 +1,671 @@ +#! /usr/bin/env perl +# Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. @@ -4910,10 +4910,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/modes +} + +close STDOUT or die "error closing STDOUT: $!"; # enforce flush -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c.inc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c.inc ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/modes/gcm.c.inc @@ -228,6 +228,13 @@ void CRYPTO_ghash_init(gmult_func *out_m *out_hash = gcm_ghash_neon; return; @@ -4928,10 +4928,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/modes #endif gcm_init_nohw(out_table, H); -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/modes/gcm_test.cc @@ -209,5 +209,15 @@ TEST(GCMTest, ABI) { } } @@ -4948,10 +4948,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/modes +#endif // GHASH_ASM_PPC64LE } #endif // SUPPORTS_ABI_TEST && !OPENSSL_NO_ASM -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/modes/internal.h @@ -325,6 +325,13 @@ void aes_gcm_dec_kernel(const uint8_t *i const u128 Htable[16]); #endif @@ -4966,10 +4966,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/modes #endif #endif // OPENSSL_NO_ASM -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/rand/getrandom_fillin.h +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/rand_extra/getrandom_fillin.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/fipsmodule/rand/getrandom_fillin.h -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/rand/getrandom_fillin.h +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/rand_extra/getrandom_fillin.h ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/rand_extra/getrandom_fillin.h @@ -30,6 +30,8 @@ #define EXPECTED_NR_getrandom 278 #elif defined(OPENSSL_ARM) @@ -4979,11 +4979,11 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/rand/ #elif defined(OPENSSL_RISCV64) #define EXPECTED_NR_getrandom 278 #endif -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/rand/rand.c +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/rand/rand.c.inc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/fipsmodule/rand/rand.c -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/rand/rand.c -@@ -431,6 +431,11 @@ void RAND_bytes_with_additional_data(uin +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/fipsmodule/rand/rand.c.inc ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/rand/rand.c.inc +@@ -427,6 +427,11 @@ bcm_infallible BCM_rand_bytes_with_addit // Take a read lock around accesses to |state->drbg|. This is needed to // avoid returning bad entropy if we race with // |rand_thread_state_clear_all|. @@ -4995,10 +4995,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/rand/ CRYPTO_MUTEX_lock_read(&state->clear_drbg_lock); #endif if (!CTR_DRBG_reseed(&state->drbg, seed, reseed_additional_data, -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/sha/internal.h @@ -23,6 +23,16 @@ extern "C" { #endif @@ -5016,10 +5016,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/sha/i // Define SHA{n}[_{variant}]_ASM if sha{n}_block_data_order[_{variant}] is // defined in assembly. -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/sha/sha1-altivec.c +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/sha/sha1-altivec.c.inc =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/sha/sha1-altivec.c ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/sha/sha1-altivec.c.inc @@ -0,0 +1,361 @@ +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. @@ -5382,10 +5382,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/sha/s +#undef BODY_20_39 +#undef BODY_40_59 +#undef BODY_60_79 -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/internal.h +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/internal.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/internal.h -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/internal.h +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/internal.h ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/internal.h @@ -183,8 +183,9 @@ extern "C" { #if !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_STATIC_ARMCAP) && \ (defined(OPENSSL_X86) || defined(OPENSSL_X86_64) || \ @@ -5398,7 +5398,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/internal.h #define NEED_CPUID // OPENSSL_cpuid_setup initializes the platform-specific feature cache. This -@@ -1657,6 +1658,16 @@ OPENSSL_INLINE int CRYPTO_is_ARMv8_SHA51 +@@ -1723,6 +1724,16 @@ OPENSSL_INLINE int CRYPTO_is_ARMv8_SHA51 #endif // OPENSSL_ARM || OPENSSL_AARCH64 @@ -5415,10 +5415,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/internal.h #if defined(BORINGSSL_DISPATCH_TEST) // Runtime CPU dispatch testing support -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/perlasm/ppc-xlate.pl +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/perlasm/ppc-xlate.pl =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/perlasm/ppc-xlate.pl ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/perlasm/ppc-xlate.pl @@ -0,0 +1,320 @@ +#! /usr/bin/env perl +# Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. @@ -5740,10 +5740,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/perlasm/ppc-xlat +___ + +close STDOUT or die "error closing STDOUT: $!"; -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/test/abi_test.h +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/test/abi_test.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/test/abi_test.h -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/test/abi_test.h +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/test/abi_test.h ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/test/abi_test.h @@ -179,7 +179,78 @@ struct alignas(16) Reg128 { CALLER_STATE_REGISTER(uint64_t, x28) \ CALLER_STATE_REGISTER(uint64_t, x29) @@ -5850,10 +5850,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/test/abi_test.h static_assert(sizeof...(args) <= 8, "too many arguments for abi_test_trampoline"); -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/test/asm/trampoline-ppc.pl +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/test/asm/trampoline-ppc.pl =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/test/asm/trampoline-ppc.pl ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/test/asm/trampoline-ppc.pl @@ -0,0 +1,262 @@ +#!/usr/bin/env perl +# Copyright (c) 2019, Google Inc. @@ -6117,10 +6117,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/test/asm/trampol + +print $code; +close STDOUT or die "error closing STDOUT: $!"; -Index: chromium-128.0.6613.113/third_party/boringssl/src/include/openssl/target.h +Index: chromium-130.0.6723.44/third_party/boringssl/src/include/openssl/target.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/include/openssl/target.h -+++ chromium-128.0.6613.113/third_party/boringssl/src/include/openssl/target.h +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/include/openssl/target.h ++++ chromium-130.0.6723.44/third_party/boringssl/src/include/openssl/target.h @@ -34,6 +34,9 @@ #elif defined(__ARMEL__) || defined(_M_ARM) #define OPENSSL_32_BIT @@ -6131,10 +6131,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/include/openssl/target. #elif defined(__MIPSEL__) && !defined(__LP64__) #define OPENSSL_32_BIT #define OPENSSL_MIPS -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/acvp/modulewrapper/main.cc @@ -37,6 +37,8 @@ int main(int argc, char **argv) { puts("ARM (32-bit)"); #elif defined(OPENSSL_AARCH64) @@ -6144,10 +6144,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/acvp/mod #else #error "FIPS build not supported on this architecture" #endif -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/delocate.go +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/delocate.go =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/util/fipstools/delocate/delocate.go -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/delocate.go +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/util/fipstools/delocate/delocate.go ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/delocate.go @@ -54,7 +54,8 @@ type stringWriter interface { type processorType int @@ -6206,7 +6206,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate return statement, nil } -@@ -646,6 +658,191 @@ func (d *delocation) processAarch64Instr +@@ -659,6 +671,191 @@ func (d *delocation) processAarch64Instr return statement, nil } @@ -6398,7 +6398,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate func (d *delocation) gatherOffsets(symRef *node32, offsets string) (*node32, string) { for symRef != nil && symRef.pegRule == ruleOffset { offset := d.contents(symRef) -@@ -700,6 +897,215 @@ func (d *delocation) parseMemRef(memRef +@@ -713,6 +910,215 @@ func (d *delocation) parseMemRef(memRef return } @@ -6614,7 +6614,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate /* Intel */ type instructionType int -@@ -1332,6 +1738,8 @@ func writeAarch64Function(w stringWriter +@@ -1345,6 +1751,8 @@ func writeAarch64Function(w stringWriter func transform(w stringWriter, inputs []inputFile) error { // symbols contains all defined symbols. symbols := make(map[string]struct{}) @@ -6623,7 +6623,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate // fileNumbers is the set of IDs seen in .file directives. fileNumbers := make(map[int]struct{}) // maxObservedFileNumber contains the largest seen file number in a -@@ -1355,6 +1763,25 @@ func transform(w stringWriter, inputs [] +@@ -1368,6 +1776,25 @@ func transform(w stringWriter, inputs [] }, ruleStatement, ruleLabel, ruleSymbolName) forEachPath(input.ast.up, func(node *node32) { @@ -6649,7 +6649,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate assertNodeType(node, ruleLocationDirective) directive := input.contents[node.begin:node.end] if !strings.HasPrefix(directive, ".file") { -@@ -1402,11 +1829,13 @@ func transform(w stringWriter, inputs [] +@@ -1415,11 +1842,13 @@ func transform(w stringWriter, inputs [] d := &delocation{ symbols: symbols, @@ -6663,7 +6663,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate gotExternalsNeeded: make(map[string]struct{}), gotOffsetsNeeded: make(map[string]struct{}), gotOffOffsetsNeeded: make(map[string]struct{}), -@@ -1441,6 +1870,22 @@ func transform(w stringWriter, inputs [] +@@ -1454,6 +1883,22 @@ func transform(w stringWriter, inputs [] for _, name := range redirectorNames { redirector := d.redirectors[name] switch d.processor { @@ -6686,7 +6686,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate case aarch64: writeAarch64Function(w, redirector, func(w stringWriter) { w.WriteString("\tb " + name + "\n") -@@ -1465,6 +1910,13 @@ func transform(w stringWriter, inputs [] +@@ -1478,6 +1923,13 @@ func transform(w stringWriter, inputs [] target := d.bssAccessorsNeeded[name] switch d.processor { @@ -6700,7 +6700,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate case x86_64: w.WriteString(".type " + funcName + ", @function\n") w.WriteString(funcName + ":\n") -@@ -1480,6 +1932,26 @@ func transform(w stringWriter, inputs [] +@@ -1493,6 +1945,26 @@ func transform(w stringWriter, inputs [] } switch d.processor { @@ -6727,7 +6727,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate case aarch64: externalNames := sortedSet(d.gotExternalsNeeded) for _, symbol := range externalNames { -@@ -1790,6 +2262,10 @@ func localTargetName(name string) string +@@ -1803,6 +2275,10 @@ func localTargetName(name string) string return ".L" + name + "_local_target" } @@ -6738,7 +6738,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate func isSynthesized(symbol string) bool { return strings.HasSuffix(symbol, "_bss_get") || symbol == "OPENSSL_ia32cap_get" || -@@ -1845,6 +2321,8 @@ func detectProcessor(input inputFile) pr +@@ -1858,6 +2334,8 @@ func detectProcessor(input inputFile) pr switch instructionName { case "movq", "call", "leaq": return x86_64 @@ -6747,10 +6747,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate case "str", "bl", "ldr", "st1": return aarch64 } -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/delocate.peg +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/delocate.peg =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/util/fipstools/delocate/delocate.peg -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/delocate.peg +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/util/fipstools/delocate/delocate.peg ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/delocate.peg @@ -12,7 +12,7 @@ # OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN # CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ @@ -6760,10 +6760,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate # https://github.com/pointlander/peg. delocate.go has a go:generate line for # rebuilding delocate.peg.go from this file. -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/delocate_test.go @@ -39,6 +39,11 @@ func (test *delocateTest) Path(file stri var delocateTests = []delocateTest{ @@ -6776,10 +6776,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate {"x86_64-Basic", []string{"in.s"}, "out.s"}, {"x86_64-BSS", []string{"in.s"}, "out.s"}, {"x86_64-GOTRewrite", []string{"in.s"}, "out.s"}, -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/in.s +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/in.s =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/in.s ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/in.s @@ -0,0 +1,9 @@ + .text +foo: @@ -6790,10 +6790,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate + .localentry foo,.-foo +.LVL0: + bl -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/out.s +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/out.s =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/out.s ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-GlobalEntry/out.s @@ -0,0 +1,62 @@ +.text +.file 1 "inserted_by_delocate.c" @@ -6857,19 +6857,19 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate +.byte 0xff +.byte 0x31 +.byte 0x80 -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/in.s +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/in.s =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/in.s ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/in.s @@ -0,0 +1,4 @@ + .text +foo: + addis 22,2,bar@toc@ha + ld 0,bar@toc@l(22) -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/out.s +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/out.s =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/out.s ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-LoadToR0/out.s @@ -0,0 +1,72 @@ +.text +.file 1 "inserted_by_delocate.c" @@ -6943,10 +6943,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate +.byte 0xff +.byte 0x31 +.byte 0x80 -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/in.s +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/in.s =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/in.s ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/in.s @@ -0,0 +1,161 @@ + .file "foo.c" + .abiversion 2 @@ -7109,10 +7109,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate + .size exported_function,.-exported_function + .ident "GCC: (Ubuntu 4.9.2-10ubuntu13) 4.9.2" + .section .note.GNU-stack,"",@progbits -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/out.s +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/out.s =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/out.s ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample/out.s @@ -0,0 +1,552 @@ +.text +.file 1 "inserted_by_delocate.c" @@ -7666,10 +7666,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate +.byte 0xff +.byte 0x31 +.byte 0x80 -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/in.s +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/in.s =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/in.s ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/in.s @@ -0,0 +1,226 @@ + .file "foo.c" + .abiversion 2 @@ -7897,10 +7897,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate + .zero 20 + .ident "GCC: (Ubuntu 4.9.2-10ubuntu13) 4.9.2" + .section .note.GNU-stack,"",@progbits -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/out.s +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/out.s =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/out.s ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-Sample2/out.s @@ -0,0 +1,677 @@ +.text +.file 1 "inserted_by_delocate.c" @@ -8579,10 +8579,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate +.byte 0xff +.byte 0x31 +.byte 0x80 -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/in.s +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/in.s =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/in.s ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/in.s @@ -0,0 +1,23 @@ + .text +foo: @@ -8607,10 +8607,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate + + addis 4, 2, 1+foo-2@toc@ha+3 + addi 4, 4, 1+foo-2@toc@l+3 -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/out.s +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/out.s =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/out.s ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/fipstools/delocate/testdata/ppc64le-TOCWithOffset/out.s @@ -0,0 +1,178 @@ +.text +.file 1 "inserted_by_delocate.c" @@ -8790,11 +8790,11 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/fipstools/delocate +.byte 0xff +.byte 0x31 +.byte 0x80 -Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.c +Index: chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.c.inc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.c -+++ chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.c -@@ -416,6 +416,10 @@ static void sha1_block_data_order(uint32 +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.c.inc ++++ chromium-130.0.6723.44/third_party/boringssl/src/crypto/fipsmodule/sha/sha1.c.inc +@@ -408,6 +408,10 @@ static void sha1_block_data_order(uint32 return; } #endif @@ -8805,11 +8805,11 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/crypto/fipsmodule/sha/s sha1_block_data_order_nohw(state, data, num); } -Index: chromium-128.0.6613.113/third_party/boringssl/src/build.json +Index: chromium-130.0.6723.44/third_party/boringssl/src/build.json =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/build.json -+++ chromium-128.0.6613.113/third_party/boringssl/src/build.json -@@ -122,6 +122,10 @@ +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/build.json ++++ chromium-130.0.6723.44/third_party/boringssl/src/build.json +@@ -118,6 +118,10 @@ {"src": "crypto/fipsmodule/sha/asm/sha512-armv4.pl"}, {"src": "crypto/fipsmodule/aes/asm/vpaes-armv7.pl"} ], @@ -8820,7 +8820,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/build.json "perlasm_x86": [ {"src": "crypto/fipsmodule/aes/asm/aesni-x86.pl"}, {"src": "crypto/fipsmodule/bn/asm/bn-586.pl"}, -@@ -225,6 +229,7 @@ +@@ -219,6 +223,7 @@ "crypto/cpu_arm_freebsd.c", "crypto/cpu_arm_linux.c", "crypto/cpu_intel.c", @@ -8828,7 +8828,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/build.json "crypto/crypto.c", "crypto/curve25519/curve25519.c", "crypto/curve25519/curve25519_64_adx.c", -@@ -775,6 +780,9 @@ +@@ -799,6 +804,9 @@ "perlasm_arm": [ {"src": "crypto/test/asm/trampoline-armv4.pl"} ], @@ -8838,10 +8838,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/build.json "perlasm_x86": [ {"src": "crypto/test/asm/trampoline-x86.pl"} ], -Index: chromium-128.0.6613.113/third_party/boringssl/src/util/pregenerate/build.go +Index: chromium-130.0.6723.44/third_party/boringssl/src/util/pregenerate/build.go =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/util/pregenerate/build.go -+++ chromium-128.0.6613.113/third_party/boringssl/src/util/pregenerate/build.go +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/util/pregenerate/build.go ++++ chromium-130.0.6723.44/third_party/boringssl/src/util/pregenerate/build.go @@ -38,6 +38,7 @@ type InputTarget struct { // architecture. PerlasmAarch64 []PerlasmSource `json:"perlasm_aarch64,omitempty"` @@ -8860,38 +8860,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/util/pregenerate/build. for _, p := range in.PerlasmX86 { addPerlasmTask(&out.Asm, &p, "-apple.S", []string{"macosx", "-fPIC"}) addPerlasmTask(&out.Asm, &p, "-linux.S", []string{"elf", "-fPIC"}) -Index: chromium-128.0.6613.113/third_party/boringssl/BUILD.generated.gni -=================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/BUILD.generated.gni -+++ chromium-128.0.6613.113/third_party/boringssl/BUILD.generated.gni -@@ -92,6 +92,7 @@ crypto_sources = [ - "src/crypto/cpu_arm_linux.c", - "src/crypto/cpu_arm_linux.h", - "src/crypto/cpu_intel.c", -+ "src/crypto/cpu_ppc64le.c", - "src/crypto/crypto.c", - "src/crypto/curve25519/curve25519.c", - "src/crypto/curve25519/curve25519_64_adx.c", -@@ -335,6 +336,7 @@ crypto_sources_asm = [ - "src/gen/bcm/aesv8-gcm-armv8-apple.S", - "src/gen/bcm/aesv8-gcm-armv8-linux.S", - "src/gen/bcm/aesv8-gcm-armv8-win.S", -+ "src/gen/bcm/aesp8-ppc-linux.S", - "src/gen/bcm/armv4-mont-linux.S", - "src/gen/bcm/armv8-mont-apple.S", - "src/gen/bcm/armv8-mont-linux.S", -@@ -351,6 +353,7 @@ crypto_sources_asm = [ - "src/gen/bcm/ghash-neon-armv8-apple.S", - "src/gen/bcm/ghash-neon-armv8-linux.S", - "src/gen/bcm/ghash-neon-armv8-win.S", -+ "src/gen/bcm/ghashp8-ppc-linux.S", - "src/gen/bcm/ghash-ssse3-x86-apple.S", - "src/gen/bcm/ghash-ssse3-x86-linux.S", - "src/gen/bcm/ghash-ssse3-x86_64-apple.S", -Index: chromium-128.0.6613.113/third_party/boringssl/README.ppc64le +Index: chromium-130.0.6723.44/third_party/boringssl/README.ppc64le =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/README.ppc64le ++++ chromium-130.0.6723.44/third_party/boringssl/README.ppc64le @@ -0,0 +1,8 @@ +============================================================== +To recreate boringssl pregenerated files patch for ppc64le: @@ -8901,3 +8873,31 @@ Index: chromium-128.0.6613.113/third_party/boringssl/README.ppc64le +go run ./util/pregenerate +cd ../../../../ +diff -urN chromium-*/third_party/boringssl/src/gen.orig chromium-*/third_party/boringssl/src/gen +Index: chromium-130.0.6723.44/third_party/boringssl/src/gen/sources.gni +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/gen/sources.gni ++++ chromium-130.0.6723.44/third_party/boringssl/src/gen/sources.gni +@@ -107,6 +107,7 @@ bcm_sources_asm = [ + "gen/bcm/aesv8-gcm-armv8-apple.S", + "gen/bcm/aesv8-gcm-armv8-linux.S", + "gen/bcm/aesv8-gcm-armv8-win.S", ++ "gen/bcm/aesp8-ppc-linux.S", + "gen/bcm/armv4-mont-linux.S", + "gen/bcm/armv8-mont-apple.S", + "gen/bcm/armv8-mont-linux.S", +@@ -123,6 +124,7 @@ bcm_sources_asm = [ + "gen/bcm/ghash-neon-armv8-apple.S", + "gen/bcm/ghash-neon-armv8-linux.S", + "gen/bcm/ghash-neon-armv8-win.S", ++ "gen/bcm/ghashp8-ppc-linux.S", + "gen/bcm/ghash-ssse3-x86-apple.S", + "gen/bcm/ghash-ssse3-x86-linux.S", + "gen/bcm/ghash-ssse3-x86_64-apple.S", +@@ -314,6 +316,7 @@ crypto_sources = [ + "crypto/cpu_arm_freebsd.c", + "crypto/cpu_arm_linux.c", + "crypto/cpu_intel.c", ++ "crypto/cpu_ppc64le.c", + "crypto/crypto.c", + "crypto/curve25519/curve25519.c", + "crypto/curve25519/curve25519_64_adx.c", diff --git a/SOURCES/0001-Force-baseline-POWER8-AltiVec-VSX-CPU-features-when-.patch b/SOURCES/0001-Force-baseline-POWER8-AltiVec-VSX-CPU-features-when-.patch index 477b3f36..4ac14140 100644 --- a/SOURCES/0001-Force-baseline-POWER8-AltiVec-VSX-CPU-features-when-.patch +++ b/SOURCES/0001-Force-baseline-POWER8-AltiVec-VSX-CPU-features-when-.patch @@ -8,20 +8,23 @@ Subject: [PATCH] Force baseline POWER8 / AltiVec / VSX CPU features when on a BUILD.gn | 6 ++++++ 1 file changed, 6 insertions(+) -Index: chromium-128.0.6613.113/v8/BUILD.gn +Index: chromium-130.0.6723.44/v8/BUILD.gn =================================================================== ---- chromium-128.0.6613.113.orig/v8/BUILD.gn -+++ chromium-128.0.6613.113/v8/BUILD.gn -@@ -1417,6 +1417,12 @@ config("toolchain") { - } - if (host_byteorder == "little") { - defines += [ "V8_TARGET_ARCH_PPC_LE" ] +--- chromium-130.0.6723.44.orig/v8/BUILD.gn ++++ chromium-130.0.6723.44/v8/BUILD.gn +@@ -1431,7 +1431,14 @@ config("toolchain") { + if (v8_current_cpu == "ppc64") { + defines += [ "V8_TARGET_ARCH_PPC64" ] + cflags += [ "-ffp-contract=off" ] +- if (current_os == "aix") { ++ if (current_os == "linux") { + cflags += [ + # Enable usage of AltiVec, VSX, and other POWER8 and higher features + "-mcpu=power8", + "-maltivec", + "-mvsx", + ] - } else if (host_byteorder == "big") { - defines += [ "V8_TARGET_ARCH_PPC_BE" ] - if (current_os == "aix") { ++ } else if (current_os == "aix") { + cflags += [ + # Work around AIX ceil, trunc and round oddities. + "-mcpu=power5+", diff --git a/SOURCES/0001-Implement-support-for-PPC64-on-Linux.patch b/SOURCES/0001-Implement-support-for-PPC64-on-Linux.patch index 623cf5ac..c3c71b29 100644 --- a/SOURCES/0001-Implement-support-for-PPC64-on-Linux.patch +++ b/SOURCES/0001-Implement-support-for-PPC64-on-Linux.patch @@ -40,16 +40,20 @@ This patch implements support for the PPC64 architecture on Linux hosts. util/misc/capture_context_test_util_linux.cc | 6 + 36 files changed, 932 insertions(+), 12 deletions(-) ---- a/third_party/crashpad/crashpad/CONTRIBUTORS -+++ b/third_party/crashpad/crashpad/CONTRIBUTORS +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/CONTRIBUTORS +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/CONTRIBUTORS ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/CONTRIBUTORS @@ -13,3 +13,5 @@ Mark Mentovai Robert Sesek Scott Graham Joshua Peraza +Shawn Anastasio +Timothy Pearson ---- a/third_party/crashpad/crashpad/minidump/minidump_context.h -+++ b/third_party/crashpad/crashpad/minidump/minidump_context.h +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context.h +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/minidump/minidump_context.h ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context.h @@ -687,6 +687,70 @@ struct MinidumpContextRISCV64 { uint32_t fcsr; }; @@ -121,8 +125,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. } // namespace crashpad #endif // CRASHPAD_MINIDUMP_MINIDUMP_CONTEXT_H_ ---- a/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc -+++ b/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context_writer.cc @@ -110,6 +110,13 @@ MinidumpContextWriter::CreateFromSnapsho break; } @@ -186,8 +192,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. +} } // namespace crashpad ---- a/third_party/crashpad/crashpad/minidump/minidump_context_writer.h -+++ b/third_party/crashpad/crashpad/minidump/minidump_context_writer.h +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context_writer.h +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/minidump/minidump_context_writer.h ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context_writer.h @@ -413,6 +413,49 @@ class MinidumpContextRISCV64Writer final MinidumpContextRISCV64 context_; }; @@ -238,8 +246,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. } // namespace crashpad #endif // CRASHPAD_MINIDUMP_MINIDUMP_CONTEXT_WRITER_H_ ---- a/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc -+++ b/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_context_writer_test.cc @@ -322,6 +322,21 @@ TYPED_TEST(MinidumpContextWriter, RISCV6 TypeParam>(context, ExpectMinidumpContextRISCV64, kSeed); } @@ -262,8 +272,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. } // namespace } // namespace test } // namespace crashpad ---- a/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc -+++ b/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc @@ -177,6 +177,8 @@ std::string MinidumpMiscInfoDebugBuildSt static constexpr char kCPU[] = "mips64"; #elif defined(ARCH_CPU_RISCV64) @@ -273,8 +285,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. #else #error define kCPU for this CPU #endif ---- a/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.cc -+++ b/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.cc @@ -297,6 +297,40 @@ void InitializeMinidumpContextRISCV64(Mi context->fcsr = value++; } @@ -355,8 +369,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. + } // namespace test } // namespace crashpad ---- a/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.h -+++ b/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.h +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.h +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.h ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/minidump/test/minidump_context_test_util.h @@ -90,6 +90,9 @@ void ExpectMinidumpContextMIPS64(uint32_ void ExpectMinidumpContextRISCV64(uint32_t expect_seed, const MinidumpContextRISCV64* observed, @@ -367,8 +383,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. //! \} } // namespace test ---- a/third_party/crashpad/crashpad/snapshot/capture_memory.cc -+++ b/third_party/crashpad/crashpad/snapshot/capture_memory.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/capture_memory.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/capture_memory.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/capture_memory.cc @@ -123,6 +123,11 @@ void CaptureMemory::PointedToByContext(c for (size_t i = 0; i < std::size(context.riscv64->regs); ++i) { MaybeCaptureMemoryAround(delegate, context.riscv64->regs[i]); @@ -381,8 +399,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. #else #error Port. #endif ---- a/third_party/crashpad/crashpad/snapshot/cpu_architecture.h -+++ b/third_party/crashpad/crashpad/snapshot/cpu_architecture.h +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_architecture.h +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/cpu_architecture.h ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_architecture.h @@ -47,6 +47,9 @@ enum CPUArchitecture { //! \brief 64-bit RISC-V. @@ -393,8 +413,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. }; } // namespace crashpad ---- a/third_party/crashpad/crashpad/snapshot/cpu_context.cc -+++ b/third_party/crashpad/crashpad/snapshot/cpu_context.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_context.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/cpu_context.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_context.cc @@ -173,6 +173,8 @@ uint64_t CPUContext::InstructionPointer( return arm64->pc; case kCPUArchitectureRISCV64: @@ -421,8 +443,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. case kCPUArchitectureRISCV64: return true; case kCPUArchitectureX86: ---- a/third_party/crashpad/crashpad/snapshot/cpu_context.h -+++ b/third_party/crashpad/crashpad/snapshot/cpu_context.h +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_context.h +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/cpu_context.h ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/cpu_context.h @@ -371,6 +371,24 @@ struct CPUContextRISCV64 { uint32_t fcsr; }; @@ -456,8 +480,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. }; }; ---- a/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h -+++ b/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/cpu_context_linux.h @@ -15,6 +15,7 @@ #ifndef CRASHPAD_SNAPSHOT_LINUX_CPU_CONTEXT_LINUX_H_ #define CRASHPAD_SNAPSHOT_LINUX_CPU_CONTEXT_LINUX_H_ @@ -545,8 +571,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. } // namespace internal } // namespace crashpad ---- a/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc -+++ b/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/debug_rendezvous_test.cc @@ -194,12 +194,15 @@ void TestAgainstTarget(PtraceConnection* device == 0 && inode == 0 && mapping_name == "[vdso]"; #if defined(ARCH_CPU_X86) @@ -564,8 +592,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. }, module_mapping->name, module_mapping->device, ---- a/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc -+++ b/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.cc @@ -367,6 +367,69 @@ bool ExceptionSnapshotLinux::ReadContext return internal::ReadContext(reader, context_address, context_.riscv64); } @@ -636,8 +666,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. #endif // ARCH_CPU_X86_FAMILY bool ExceptionSnapshotLinux::Initialize( ---- a/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h -+++ b/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux.h @@ -91,6 +91,8 @@ class ExceptionSnapshotLinux final : pub CPUContextMIPS64 mips64; #elif defined(ARCH_CPU_RISCV64) @@ -647,8 +679,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. #endif } context_union_; CPUContext context_; ---- a/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc -+++ b/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/exception_snapshot_linux_test.cc @@ -325,7 +325,28 @@ void ExpectContext(const CPUContext& act sizeof(actual.riscv64->fpregs)), 0); @@ -678,8 +712,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. #else #error Port. #endif ---- a/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc -+++ b/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/process_reader_linux.cc @@ -129,6 +129,8 @@ void ProcessReaderLinux::Thread::Initial : thread_info.thread_context.t32.regs[29]; #elif defined(ARCH_CPU_RISCV64) @@ -689,8 +725,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. #else #error Port. #endif ---- a/third_party/crashpad/crashpad/snapshot/linux/signal_context.h -+++ b/third_party/crashpad/crashpad/snapshot/linux/signal_context.h +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/signal_context.h +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/linux/signal_context.h ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/linux/signal_context.h @@ -456,6 +456,89 @@ static_assert(offsetof(UContextfcsr = value++; } @@ -891,8 +937,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. + } // namespace test } // namespace crashpad ---- a/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.h -+++ b/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.h +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.h +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.h ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/snapshot/test/test_cpu_context.h @@ -64,6 +64,7 @@ void InitializeCPUContextARM64(CPUContex void InitializeCPUContextMIPS(CPUContext* context, uint32_t seed); void InitializeCPUContextMIPS64(CPUContext* context, uint32_t seed); @@ -901,8 +949,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. //! \} } // namespace test ---- a/third_party/crashpad/crashpad/test/linux/get_tls.cc -+++ b/third_party/crashpad/crashpad/test/linux/get_tls.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/test/linux/get_tls.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/test/linux/get_tls.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/test/linux/get_tls.cc @@ -51,6 +51,8 @@ LinuxVMAddress GetTLS() { : "$3"); #elif defined(ARCH_CPU_RISCV64) @@ -912,8 +962,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. #else #error Port. #endif // ARCH_CPU_ARMEL ---- a/third_party/crashpad/crashpad/test/multiprocess_posix.cc -+++ b/third_party/crashpad/crashpad/test/multiprocess_posix.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/test/multiprocess_posix.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/test/multiprocess_posix.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/test/multiprocess_posix.cc @@ -162,7 +162,8 @@ void Multiprocess::SetExpectedChildTermi } @@ -924,8 +976,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. SetExpectedChildTermination(kTerminationSignal, SIGTRAP); #else SetExpectedChildTermination(kTerminationSignal, SIGILL); ---- a/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc -+++ b/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/auxiliary_vector.cc @@ -56,6 +56,11 @@ bool AuxiliaryVector::Read(PtraceConnect if (type == AT_IGNORE) { continue; @@ -938,8 +992,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. if (!MapInsertOrReplace(&values_, type, value, nullptr)) { LOG(ERROR) << "duplicate auxv entry"; return false; ---- a/third_party/crashpad/crashpad/util/linux/ptracer.cc -+++ b/third_party/crashpad/crashpad/util/linux/ptracer.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/ptracer.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/util/linux/ptracer.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/ptracer.cc @@ -430,6 +430,64 @@ bool GetThreadArea64(pid_t tid, return true; } @@ -1015,8 +1071,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. GetThreadArea64(tid, info->thread_context, &info->thread_specific_data_address, ---- a/third_party/crashpad/crashpad/util/linux/thread_info.h -+++ b/third_party/crashpad/crashpad/util/linux/thread_info.h +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/thread_info.h +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/util/linux/thread_info.h ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/util/linux/thread_info.h @@ -34,6 +34,10 @@ #include #endif @@ -1135,8 +1193,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. //! \brief The thread-local storage address for the thread. LinuxVMAddress thread_specific_data_address; }; ---- a/third_party/crashpad/crashpad/util/misc/capture_context.h -+++ b/third_party/crashpad/crashpad/util/misc/capture_context.h +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context.h +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/util/misc/capture_context.h ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context.h @@ -70,6 +70,7 @@ using NativeCPUContext = ucontext_t; //! Linux | ARM/ARM64 | `r0`/`x0` //! Linux | MIPS/MIPS64 | `$a0` @@ -1145,8 +1205,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. //! //! Additionally, the value `LR` on ARM/ARM64 will be the return address of //! this function. ---- a/third_party/crashpad/crashpad/util/misc/capture_context_linux.S -+++ b/third_party/crashpad/crashpad/util/misc/capture_context_linux.S +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context_linux.S +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/util/misc/capture_context_linux.S ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context_linux.S @@ -30,7 +30,7 @@ .globl CAPTURECONTEXT_SYMBOL2 #if defined(__i386__) || defined(__x86_64__) @@ -1373,8 +1435,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. #elif defined(__riscv) #define MCONTEXT_GREGS_OFFSET 176 ---- a/third_party/crashpad/crashpad/util/misc/capture_context_test.cc -+++ b/third_party/crashpad/crashpad/util/misc/capture_context_test.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context_test.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/util/misc/capture_context_test.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context_test.cc @@ -48,7 +48,7 @@ void TestCaptureContext() { uintptr_t pc = ProgramCounterFromContext(context_1); @@ -1384,8 +1448,10 @@ This patch implements support for the PPC64 architecture on Linux hosts. // Sanitizers can cause enough code bloat that the “nearby” check would // likely fail. const uintptr_t kReferencePC = ---- a/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc -+++ b/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc +Index: chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc +=================================================================== +--- chromium-130.0.6723.44.orig/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc ++++ chromium-130.0.6723.44/third_party/crashpad/crashpad/util/misc/capture_context_test_util_linux.cc @@ -38,6 +38,8 @@ void SanityCheckContext(const NativeCPUC #elif defined(ARCH_CPU_RISCV64) EXPECT_EQ(context.uc_mcontext.__gregs[10], diff --git a/SOURCES/0001-Implement-support-for-ppc64-on-Linux.patch b/SOURCES/0001-Implement-support-for-ppc64-on-Linux.patch index 7d283dc8..82533985 100644 --- a/SOURCES/0001-Implement-support-for-ppc64-on-Linux.patch +++ b/SOURCES/0001-Implement-support-for-ppc64-on-Linux.patch @@ -54,10 +54,10 @@ https://wiki.raptorcs.com/wiki/Porting/Chromium src/tools/linux/md2core/minidump-2-core.cc | 45 +++++++++++++++ 25 files changed, 281 insertions(+), 35 deletions(-) -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/raw_context_cpu.h @@ -51,6 +51,8 @@ typedef MDRawContextRISCV64 RawContextCP # else # error "Unexpected __riscv_xlen" @@ -67,10 +67,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/du #else #error "This code has not been ported to your platform yet." #endif -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.cc @@ -336,7 +336,42 @@ void ThreadInfo::FillCPUContext(RawConte #error "Unexpected __riscv_xlen" #endif @@ -153,10 +153,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/du +#endif + } // namespace google_breakpad -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/thread_info.h @@ -67,6 +67,10 @@ struct ThreadInfo { // Use the structures defined in struct user_regs_struct regs; @@ -180,10 +180,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/du }; } // namespace google_breakpad -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc @@ -324,6 +324,48 @@ void UContextReader::FillCPUContext(RawC #error "Unexpected __riscv_xlen" #endif @@ -233,10 +233,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/du #endif } // namespace google_breakpad -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h @@ -54,6 +54,9 @@ struct UContextReader { #elif defined(__aarch64__) static void FillCPUContext(RawContextCPU* out, const ucontext_t* uc, @@ -247,10 +247,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/du #else static void FillCPUContext(RawContextCPU* out, const ucontext_t* uc); #endif -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc @@ -464,6 +464,13 @@ bool ExceptionHandler::HandleSignal(int memcpy(&g_crash_context_.float_state, fp_ptr, sizeof(g_crash_context_.float_state)); @@ -295,10 +295,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/ha #elif defined(__riscv) context.siginfo.si_addr = reinterpret_cast(context.context.uc_mcontext.__gregs[REG_PC]); -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.h @@ -200,7 +200,11 @@ class ExceptionHandler { siginfo_t siginfo; pid_t tid; // the crashing thread. @@ -312,10 +312,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/ha fpstate_t float_state; #endif }; -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler_unittest.cc @@ -321,7 +321,7 @@ TEST(ExceptionHandlerTest, ParallelChild ASSERT_EQ(SIGSEGV, WTERMSIG(status)); return; @@ -347,10 +347,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/ha const int kOffset = kMemorySize - sizeof(kIllegalInstruction); const pid_t child = fork(); -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer.cc @@ -141,7 +141,9 @@ class MicrodumpWriter { const MicrodumpExtraInfo& microdump_extra_info, LinuxDumper* dumper) @@ -393,10 +393,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/mi const google_breakpad::fpstate_t* const float_state_; #endif LinuxDumper* dumper_; -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/microdump_writer/microdump_writer_unittest.cc @@ -282,10 +282,19 @@ TEST(MicrodumpWriterTest, BasicWithMappi CrashAndGetMicrodump(mappings, MicrodumpExtraInfo(), &buf); ASSERT_TRUE(ContainsMicrodump(buf)); @@ -420,10 +420,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/mi #else ASSERT_NE(std::string::npos, buf.find("M 00001000 0000002A 00001000 " -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_core_dumper.cc @@ -118,6 +118,9 @@ bool LinuxCoreDumper::GetThreadInfoByInd #elif defined(__riscv) stack_pointer = reinterpret_cast( @@ -446,10 +446,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/mi # if defined(__ANDROID__) for (int i = EF_R0; i <= EF_R31; i++) info.mcontext.gregs[i - EF_R0] = status->pr_reg[i]; -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.cc @@ -770,7 +770,9 @@ bool LinuxDumper::GetStackInfo(const voi reinterpret_cast(int_stack_pointer & ~(page_size - 1)); @@ -461,10 +461,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/mi const MappingInfo* mapping = FindMapping(stack_pointer); if (!mapping) -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper.h @@ -64,7 +64,8 @@ namespace google_breakpad { typedef Elf32_auxv_t elf_aux_entry; #elif defined(__x86_64) || defined(__aarch64__) || \ @@ -475,10 +475,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/mi typedef Elf64_auxv_t elf_aux_entry; #endif -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_dumper_unittest_helper.cc @@ -56,6 +56,8 @@ #define TID_PTR_REGISTER "$1" #elif defined(__riscv) @@ -488,10 +488,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/mi #else #error This test has not been ported to this platform. #endif -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper.cc @@ -208,12 +208,12 @@ bool LinuxPtraceDumper::ReadRegisterSet( #ifdef PTRACE_GETREGSET struct iovec io; @@ -533,10 +533,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/mi #else # error "This code hasn't been ported to your platform yet." #endif -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/linux_ptrace_dumper_unittest.cc @@ -470,6 +470,9 @@ TEST(LinuxPtraceDumperTest, VerifyStackR #elif defined(__riscv) pid_t* process_tid_location = @@ -556,10 +556,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/mi #else #error This test has not been ported to this platform. #endif -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc @@ -144,7 +144,9 @@ class MinidumpWriter { : fd_(minidump_fd), path_(minidump_path), @@ -613,10 +613,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/mi const google_breakpad::fpstate_t* const float_state_; // ditto #endif LinuxDumper* dumper_; -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.h @@ -47,6 +47,8 @@ class ExceptionHandler; #if defined(__aarch64__) @@ -626,10 +626,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/mi #elif !defined(__ARM_EABI__) && !defined(__mips__) typedef std::remove_pointer::type fpstate_t; #endif -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer_unittest.cc @@ -723,6 +723,9 @@ TEST(MinidumpWriterTest, InvalidStackPoi #elif defined(__riscv) context.context.uc_mcontext.__gregs[MD_CONTEXT_RISCV_REG_SP] = @@ -640,10 +640,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/client/linux/mi #else # error "This code has not been ported to your platform yet." #endif -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file.cc @@ -72,8 +72,7 @@ bool MemoryMappedFile::Map(const char* p #if defined(__x86_64__) || defined(__aarch64__) || \ @@ -654,10 +654,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/common/linux/me struct kernel_stat st; if (sys_fstat(fd, &st) == -1 || st.st_size < 0) { #else -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/linux/memory_mapped_file_unittest.cc @@ -179,9 +179,10 @@ TEST_F(MemoryMappedFileTest, RemapAfterM TEST_F(MemoryMappedFileTest, MapWithOffset) { // Put more data in the test file this time. Offsets can only be @@ -672,10 +672,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/common/linux/me for (size_t i = 0; i < data1_size; ++i) { data1[i] = i & 0x7f; } -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/common/memory_allocator_unittest.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/memory_allocator_unittest.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/common/memory_allocator_unittest.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/common/memory_allocator_unittest.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/common/memory_allocator_unittest.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/common/memory_allocator_unittest.cc @@ -60,8 +60,9 @@ TEST(PageAllocatorTest, LargeObject) { EXPECT_EQ(0U, allocator.pages_allocated()); @@ -687,10 +687,10 @@ Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/common/memory_a for (unsigned i = 1; i < 10; ++i) { uint8_t* p = reinterpret_cast(allocator.Alloc(i)); ASSERT_FALSE(p == NULL); -Index: chromium-128.0.6613.113/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc +Index: chromium-130.0.6723.44/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc -+++ chromium-128.0.6613.113/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc +--- chromium-130.0.6723.44.orig/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc ++++ chromium-130.0.6723.44/third_party/breakpad/breakpad/src/tools/linux/md2core/minidump-2-core.cc @@ -82,6 +82,8 @@ #define ELF_ARCH EM_AARCH64 #elif defined(__riscv) diff --git a/SOURCES/0001-sandbox-linux-Update-syscall-helpers-lists-for-ppc64.patch b/SOURCES/0001-sandbox-linux-Update-syscall-helpers-lists-for-ppc64.patch index a191e748..a1eee2ee 100644 --- a/SOURCES/0001-sandbox-linux-Update-syscall-helpers-lists-for-ppc64.patch +++ b/SOURCES/0001-sandbox-linux-Update-syscall-helpers-lists-for-ppc64.patch @@ -12,10 +12,10 @@ Subject: [PATCH] sandbox/linux: Update syscall helpers/lists for ppc64 sandbox/linux/services/syscall_wrappers.cc | 2 +- 6 files changed, 73 insertions(+), 55 deletions(-) -Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc +Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc =================================================================== ---- chromium-128.0.6613.113.orig/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc -+++ chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc +--- chromium-130.0.6723.44.orig/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc ++++ chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc @@ -90,7 +90,8 @@ bool IsBaselinePolicyWatched(int sysno) SyscallSets::IsPrctl(sysno) || SyscallSets::IsProcessGroupOrSession(sysno) || @@ -54,10 +54,10 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/baseline_policy if (SyscallSets::IsSocketCall(sysno)) return RestrictSocketcallCommand(); #endif -Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc +Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc =================================================================== ---- chromium-128.0.6613.113.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc -+++ chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc +--- chromium-130.0.6723.44.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc ++++ chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc @@ -36,7 +36,7 @@ #include "sandbox/linux/system_headers/linux_time.h" @@ -146,10 +146,10 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_paramet PTRACE_GETREGS, PTRACE_GETFPREGS, PTRACE_GET_THREAD_AREA, PTRACE_GETREGSET, #endif -Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h +Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h =================================================================== ---- chromium-128.0.6613.113.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h -+++ chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h +--- chromium-130.0.6723.44.orig/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h ++++ chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.h @@ -52,7 +52,7 @@ SANDBOX_EXPORT bpf_dsl::ResultExpr Restr // O_NONBLOCK | O_SYNC | O_LARGEFILE | O_CLOEXEC | O_NOATIME. SANDBOX_EXPORT bpf_dsl::ResultExpr RestrictFcntlCommands(); @@ -159,10 +159,10 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_paramet // Restrict socketcall(2) to only allow socketpair(2), send(2), recv(2), // sendto(2), recvfrom(2), shutdown(2), sendmsg(2) and recvmsg(2). SANDBOX_EXPORT bpf_dsl::ResultExpr RestrictSocketcallCommand(); -Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc +Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc =================================================================== ---- chromium-128.0.6613.113.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc -+++ chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc +--- chromium-130.0.6723.44.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc ++++ chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc @@ -29,7 +29,8 @@ bool SyscallSets::IsAllowedGettime(int s switch (sysno) { case __NR_gettimeofday: @@ -357,7 +357,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc bool SyscallSets::IsNetworkSocketInformation(int sysno) { switch (sysno) { case __NR_getpeername: -@@ -553,7 +567,7 @@ bool SyscallSets::IsAllowedAddressSpaceA +@@ -554,7 +568,7 @@ bool SyscallSets::IsAllowedAddressSpaceA case __NR_mincore: case __NR_mlockall: #if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \ @@ -366,7 +366,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc case __NR_mmap: #endif #if defined(__i386__) || defined(__arm__) || \ -@@ -583,7 +597,8 @@ bool SyscallSets::IsAllowedGeneralIo(int +@@ -584,7 +598,8 @@ bool SyscallSets::IsAllowedGeneralIo(int switch (sysno) { case __NR_lseek: #if defined(__i386__) || defined(__arm__) || \ @@ -376,7 +376,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc case __NR__llseek: #endif #if !defined(__aarch64__) -@@ -603,26 +618,28 @@ bool SyscallSets::IsAllowedGeneralIo(int +@@ -604,26 +619,28 @@ bool SyscallSets::IsAllowedGeneralIo(int case __NR_readv: case __NR_pread64: #if defined(__arm__) || \ @@ -411,7 +411,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc case __NR_sendmsg: // Could specify destination. case __NR_sendto: // Could specify destination. #endif -@@ -678,7 +695,8 @@ bool SyscallSets::IsAllowedBasicSchedule +@@ -679,7 +696,8 @@ bool SyscallSets::IsAllowedBasicSchedule return true; case __NR_getpriority: #if defined(__i386__) || defined(__arm__) || \ @@ -421,7 +421,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc case __NR_nice: #endif case __NR_setpriority: -@@ -690,7 +708,8 @@ bool SyscallSets::IsAllowedBasicSchedule +@@ -691,7 +709,8 @@ bool SyscallSets::IsAllowedBasicSchedule bool SyscallSets::IsAdminOperation(int sysno) { switch (sysno) { #if defined(__i386__) || defined(__arm__) || \ @@ -431,7 +431,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc case __NR_bdflush: #endif case __NR_kexec_load: -@@ -706,7 +725,8 @@ bool SyscallSets::IsAdminOperation(int s +@@ -707,7 +726,8 @@ bool SyscallSets::IsAdminOperation(int s bool SyscallSets::IsKernelModule(int sysno) { switch (sysno) { @@ -441,7 +441,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc case __NR_create_module: case __NR_get_kernel_syms: // Should ENOSYS. case __NR_query_module: -@@ -739,7 +759,8 @@ bool SyscallSets::IsFsControl(int sysno) +@@ -740,7 +760,8 @@ bool SyscallSets::IsFsControl(int sysno) case __NR_swapoff: case __NR_swapon: #if defined(__i386__) || \ @@ -451,7 +451,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc case __NR_umount: #endif case __NR_umount2: -@@ -755,7 +776,7 @@ bool SyscallSets::IsNuma(int sysno) { +@@ -756,7 +777,7 @@ bool SyscallSets::IsNuma(int sysno) { case __NR_getcpu: case __NR_mbind: #if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \ @@ -460,7 +460,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc case __NR_migrate_pages: #endif case __NR_move_pages: -@@ -790,14 +811,15 @@ bool SyscallSets::IsGlobalProcessEnviron +@@ -791,14 +812,15 @@ bool SyscallSets::IsGlobalProcessEnviron switch (sysno) { case __NR_acct: // Privileged. #if defined(__i386__) || defined(__x86_64__) || defined(__mips__) || \ @@ -479,7 +479,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc case __NR_ulimit: #endif case __NR_getrusage: -@@ -831,7 +853,7 @@ bool SyscallSets::IsGlobalSystemStatus(i +@@ -832,7 +854,7 @@ bool SyscallSets::IsGlobalSystemStatus(i #endif case __NR_sysinfo: case __NR_uname: @@ -488,7 +488,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc case __NR_olduname: case __NR_oldolduname: #endif -@@ -915,7 +937,8 @@ bool SyscallSets::IsSystemVSemaphores(in +@@ -916,7 +938,8 @@ bool SyscallSets::IsSystemVSemaphores(in #if defined(__i386__) || defined(__x86_64__) || defined(__arm__) || \ defined(__aarch64__) || \ @@ -498,7 +498,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc // These give a lot of ambient authority and bypass the setuid sandbox. bool SyscallSets::IsSystemVSharedMemory(int sysno) { switch (sysno) { -@@ -946,7 +969,8 @@ bool SyscallSets::IsSystemVMessageQueue( +@@ -947,7 +970,8 @@ bool SyscallSets::IsSystemVMessageQueue( #endif #if defined(__i386__) || \ @@ -508,7 +508,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc // Big system V multiplexing system call. bool SyscallSets::IsSystemVIpc(int sysno) { switch (sysno) { -@@ -966,7 +990,8 @@ bool SyscallSets::IsAnySystemV(int sysno +@@ -967,7 +991,8 @@ bool SyscallSets::IsAnySystemV(int sysno return IsSystemVMessageQueue(sysno) || IsSystemVSemaphores(sysno) || IsSystemVSharedMemory(sysno); #elif defined(__i386__) || \ @@ -518,7 +518,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc return IsSystemVIpc(sysno); #endif } -@@ -1023,7 +1048,8 @@ bool SyscallSets::IsFaNotify(int sysno) +@@ -1024,7 +1049,8 @@ bool SyscallSets::IsFaNotify(int sysno) bool SyscallSets::IsTimer(int sysno) { switch (sysno) { case __NR_getitimer: @@ -528,7 +528,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc case __NR_alarm: #endif case __NR_setitimer: -@@ -1102,18 +1128,22 @@ bool SyscallSets::IsMisc(int sysno) { +@@ -1103,18 +1129,22 @@ bool SyscallSets::IsMisc(int sysno) { case __NR_syncfs: case __NR_vhangup: // The system calls below are not implemented. @@ -555,7 +555,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc case __NR_gtty: case __NR_idle: case __NR_lock: -@@ -1121,20 +1151,22 @@ bool SyscallSets::IsMisc(int sysno) { +@@ -1122,20 +1152,22 @@ bool SyscallSets::IsMisc(int sysno) { case __NR_prof: case __NR_profil: #endif @@ -582,10 +582,10 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc case __NR_vserver: #endif return true; -Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h +Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h =================================================================== ---- chromium-128.0.6613.113.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h -+++ chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h +--- chromium-130.0.6723.44.orig/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h ++++ chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h @@ -46,13 +46,14 @@ class SANDBOX_EXPORT SyscallSets { static bool IsDeniedGetOrModifySocket(int sysno); @@ -623,10 +623,10 @@ Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/syscall_sets.h // Big system V multiplexing system call. static bool IsSystemVIpc(int sysno); #endif -Index: chromium-128.0.6613.113/sandbox/linux/services/syscall_wrappers.cc +Index: chromium-130.0.6723.44/sandbox/linux/services/syscall_wrappers.cc =================================================================== ---- chromium-128.0.6613.113.orig/sandbox/linux/services/syscall_wrappers.cc -+++ chromium-128.0.6613.113/sandbox/linux/services/syscall_wrappers.cc +--- chromium-130.0.6723.44.orig/sandbox/linux/services/syscall_wrappers.cc ++++ chromium-130.0.6723.44/sandbox/linux/services/syscall_wrappers.cc @@ -61,7 +61,7 @@ long sys_clone(unsigned long flags, #if defined(ARCH_CPU_X86_64) return syscall(__NR_clone, flags, child_stack, ptid, ctid, tls); diff --git a/SOURCES/0002-Add-PPC64-generated-files-for-boringssl.patch b/SOURCES/0002-Add-PPC64-generated-files-for-boringssl.patch index 7ae06a95..535a0d68 100644 --- a/SOURCES/0002-Add-PPC64-generated-files-for-boringssl.patch +++ b/SOURCES/0002-Add-PPC64-generated-files-for-boringssl.patch @@ -1,7 +1,7 @@ -Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/bcm/aesp8-ppc-linux.S +Index: chromium-130.0.6723.44/third_party/boringssl/src/gen/bcm/aesp8-ppc-linux.S =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/gen/bcm/aesp8-ppc-linux.S ++++ chromium-130.0.6723.44/third_party/boringssl/src/gen/bcm/aesp8-ppc-linux.S @@ -0,0 +1,3673 @@ +// This file is generated from a similarly-named Perl script in the BoringSSL +// source tree. Do not edit by hand. @@ -3676,10 +3676,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/bcm/aesp8-ppc-linux +// See https://www.airs.com/blog/archives/518. +.section .note.GNU-stack,"",%progbits +#endif -Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/bcm/ghashp8-ppc-linux.S +Index: chromium-130.0.6723.44/third_party/boringssl/src/gen/bcm/ghashp8-ppc-linux.S =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/gen/bcm/ghashp8-ppc-linux.S ++++ chromium-130.0.6723.44/third_party/boringssl/src/gen/bcm/ghashp8-ppc-linux.S @@ -0,0 +1,590 @@ +// This file is generated from a similarly-named Perl script in the BoringSSL +// source tree. Do not edit by hand. @@ -4271,11 +4271,11 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/bcm/ghashp8-ppc-lin +// See https://www.airs.com/blog/archives/518. +.section .note.GNU-stack,"",%progbits +#endif -Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.cmake +Index: chromium-130.0.6723.44/third_party/boringssl/src/gen/sources.cmake =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/gen/sources.cmake -+++ chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.cmake -@@ -110,6 +110,7 @@ set( +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/gen/sources.cmake ++++ chromium-130.0.6723.44/third_party/boringssl/src/gen/sources.cmake +@@ -106,6 +106,7 @@ set( gen/bcm/aesni-x86-linux.S gen/bcm/aesni-x86_64-apple.S gen/bcm/aesni-x86_64-linux.S @@ -4283,7 +4283,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.cmake gen/bcm/aesv8-armv7-linux.S gen/bcm/aesv8-armv8-apple.S gen/bcm/aesv8-armv8-linux.S -@@ -141,6 +142,7 @@ set( +@@ -137,6 +138,7 @@ set( gen/bcm/ghash-x86-linux.S gen/bcm/ghash-x86_64-apple.S gen/bcm/ghash-x86_64-linux.S @@ -4291,7 +4291,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.cmake gen/bcm/ghashv8-armv7-linux.S gen/bcm/ghashv8-armv8-apple.S gen/bcm/ghashv8-armv8-linux.S -@@ -338,6 +340,7 @@ set( +@@ -328,6 +330,7 @@ set( crypto/cpu_arm_freebsd.c crypto/cpu_arm_linux.c crypto/cpu_intel.c @@ -4299,7 +4299,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.cmake crypto/crypto.c crypto/curve25519/curve25519.c crypto/curve25519/curve25519_64_adx.c -@@ -778,37 +781,6 @@ set( +@@ -805,37 +808,6 @@ set( CRYPTO_TEST_DATA crypto/blake2/blake2b256_tests.txt @@ -4337,7 +4337,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.cmake crypto/curve25519/ed25519_tests.txt crypto/dilithium/dilithium_tests.txt crypto/dilithium/edge_cases_draft_dilithium3_sign.txt -@@ -1198,1413 +1170,6 @@ set( +@@ -1279,1413 +1251,6 @@ set( set( PKI_TEST_DATA @@ -5751,7 +5751,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.cmake pki/testdata/verify_unittest/google-intermediate1.der pki/testdata/verify_unittest/google-intermediate2.der pki/testdata/verify_unittest/google-leaf.der -@@ -2725,6 +1290,7 @@ set( +@@ -2838,6 +1403,7 @@ set( gen/test_support/trampoline-armv8-apple.S gen/test_support/trampoline-armv8-linux.S gen/test_support/trampoline-armv8-win.S @@ -5759,11 +5759,11 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.cmake gen/test_support/trampoline-x86-apple.S gen/test_support/trampoline-x86-linux.S gen/test_support/trampoline-x86_64-apple.S -Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.json +Index: chromium-130.0.6723.44/third_party/boringssl/src/gen/sources.json =================================================================== ---- chromium-128.0.6613.113.orig/third_party/boringssl/src/gen/sources.json -+++ chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.json -@@ -88,6 +88,7 @@ +--- chromium-130.0.6723.44.orig/third_party/boringssl/src/gen/sources.json ++++ chromium-130.0.6723.44/third_party/boringssl/src/gen/sources.json +@@ -84,6 +84,7 @@ "gen/bcm/aesni-x86-linux.S", "gen/bcm/aesni-x86_64-apple.S", "gen/bcm/aesni-x86_64-linux.S", @@ -5771,7 +5771,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.json "gen/bcm/aesv8-armv7-linux.S", "gen/bcm/aesv8-armv8-apple.S", "gen/bcm/aesv8-armv8-linux.S", -@@ -119,6 +120,7 @@ +@@ -115,6 +116,7 @@ "gen/bcm/ghash-x86-linux.S", "gen/bcm/ghash-x86_64-apple.S", "gen/bcm/ghash-x86_64-linux.S", @@ -5779,7 +5779,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.json "gen/bcm/ghashv8-armv7-linux.S", "gen/bcm/ghashv8-armv8-apple.S", "gen/bcm/ghashv8-armv8-linux.S", -@@ -308,6 +310,7 @@ +@@ -298,6 +300,7 @@ "crypto/cpu_arm_freebsd.c", "crypto/cpu_arm_linux.c", "crypto/cpu_intel.c", @@ -5787,7 +5787,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.json "crypto/crypto.c", "crypto/curve25519/curve25519.c", "crypto/curve25519/curve25519_64_adx.c", -@@ -732,37 +735,6 @@ +@@ -759,37 +762,6 @@ ], "data": [ "crypto/blake2/blake2b256_tests.txt", @@ -5825,7 +5825,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.json "crypto/curve25519/ed25519_tests.txt", "crypto/dilithium/dilithium_tests.txt", "crypto/dilithium/edge_cases_draft_dilithium3_sign.txt", -@@ -1136,1413 +1108,6 @@ +@@ -1216,1413 +1188,6 @@ "pki/verify_unittest.cc" ], "data": [ @@ -7239,7 +7239,7 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.json "pki/testdata/verify_unittest/google-intermediate1.der", "pki/testdata/verify_unittest/google-intermediate2.der", "pki/testdata/verify_unittest/google-leaf.der", -@@ -2648,6 +1213,7 @@ +@@ -2758,6 +1323,7 @@ "gen/test_support/trampoline-armv8-apple.S", "gen/test_support/trampoline-armv8-linux.S", "gen/test_support/trampoline-armv8-win.S", @@ -7247,10 +7247,10 @@ Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/sources.json "gen/test_support/trampoline-x86-apple.S", "gen/test_support/trampoline-x86-linux.S", "gen/test_support/trampoline-x86_64-apple.S", -Index: chromium-128.0.6613.113/third_party/boringssl/src/gen/test_support/trampoline-ppc-linux.S +Index: chromium-130.0.6723.44/third_party/boringssl/src/gen/test_support/trampoline-ppc-linux.S =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/boringssl/src/gen/test_support/trampoline-ppc-linux.S ++++ chromium-130.0.6723.44/third_party/boringssl/src/gen/test_support/trampoline-ppc-linux.S @@ -0,0 +1,1413 @@ +// This file is generated from a similarly-named Perl script in the BoringSSL +// source tree. Do not edit by hand. diff --git a/SOURCES/0002-third_party-libvpx-Remove-bad-ppc64-config.patch b/SOURCES/0002-third_party-libvpx-Remove-bad-ppc64-config.patch index cbaaab6c..6b655bd9 100644 --- a/SOURCES/0002-third_party-libvpx-Remove-bad-ppc64-config.patch +++ b/SOURCES/0002-third_party-libvpx-Remove-bad-ppc64-config.patch @@ -1,12 +1,6 @@ -commit f752c1b0973a1dd61854b290a05fc1cd57b7b313 -Author: Timothy Pearson -Date: Tue Aug 20 22:40:12 2024 -0500 - - OLD - -Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h +Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h +--- chromium-130.0.6723.44.orig/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h +++ /dev/null @@ -1,330 +0,0 @@ -/* @@ -338,10 +332,10 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vp8_ -} // extern "C" -#endif - --#endif -Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h +-#endif // VP8_RTCD_H_ +Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h +--- chromium-130.0.6723.44.orig/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h +++ /dev/null @@ -1,203 +0,0 @@ -/* @@ -546,10 +540,10 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vp9_ -} // extern "C" -#endif - --#endif -Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm +-#endif // VP9_RTCD_H_ +Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm =================================================================== ---- chromium-128.0.6613.113.orig/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm +--- chromium-130.0.6723.44.orig/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm +++ /dev/null @@ -1,108 +0,0 @@ -@ This file was created from a .asm file @@ -660,9 +654,9 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_ -.equ DECODE_WIDTH_LIMIT , 16384 -.equ DECODE_HEIGHT_LIMIT , 16384 - .section .note.GNU-stack,"",%progbits -Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_config.c +Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.c =================================================================== ---- chromium-128.0.6613.113.orig/third_party/libvpx/source/config/linux/ppc64/vpx_config.c +--- chromium-130.0.6723.44.orig/third_party/libvpx/source/config/linux/ppc64/vpx_config.c +++ /dev/null @@ -1,10 +0,0 @@ -/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */ @@ -675,9 +669,9 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_ -#include "vpx/vpx_codec.h" -static const char* const cfg = "--target=ppc64le-linux-gcc --enable-external-build --enable-postproc --enable-multi-res-encoding --enable-temporal-denoising --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384 --enable-realtime-only --disable-install-docs --disable-libyuv --enable-unit-tests"; -const char *vpx_codec_build_config(void) {return cfg;} -Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_config.h +Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/libvpx/source/config/linux/ppc64/vpx_config.h +--- chromium-130.0.6723.44.orig/third_party/libvpx/source/config/linux/ppc64/vpx_config.h +++ /dev/null @@ -1,117 +0,0 @@ -/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */ @@ -797,9 +791,9 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_ -#define DECODE_WIDTH_LIMIT 16384 -#define DECODE_HEIGHT_LIMIT 16384 -#endif /* VPX_CONFIG_H */ -Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h +Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h +--- chromium-130.0.6723.44.orig/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h +++ /dev/null @@ -1,2138 +0,0 @@ -/* @@ -2939,10 +2933,10 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_ -} // extern "C" -#endif - --#endif -Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h +-#endif // VPX_DSP_RTCD_H_ +Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h +--- chromium-130.0.6723.44.orig/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h +++ /dev/null @@ -1,110 +0,0 @@ -/* @@ -3054,4 +3048,4 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_ -} // extern "C" -#endif - --#endif +-#endif // VPX_SCALE_RTCD_H_ diff --git a/SOURCES/0003-third_party-libvpx-Add-ppc64-generated-config.patch b/SOURCES/0003-third_party-libvpx-Add-ppc64-generated-config.patch index 2430ee9b..4aab2eec 100644 --- a/SOURCES/0003-third_party-libvpx-Add-ppc64-generated-config.patch +++ b/SOURCES/0003-third_party-libvpx-Add-ppc64-generated-config.patch @@ -1,7 +1,7 @@ -Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h +Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h ++++ chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vp8_rtcd.h @@ -0,0 +1,316 @@ +// This file is generated. Do not edit. +#ifndef VP8_RTCD_H_ @@ -319,10 +319,10 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vp8_ +#endif + +#endif -Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h +Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h ++++ chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vp9_rtcd.h @@ -0,0 +1,267 @@ +// This file is generated. Do not edit. +#ifndef VP9_RTCD_H_ @@ -591,10 +591,10 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vp9_ +#endif + +#endif -Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm +Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm ++++ chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.asm @@ -0,0 +1,107 @@ +@ This file was created from a .asm file +@ using the ads2gas.pl script. @@ -703,10 +703,10 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_ +.equ DECODE_WIDTH_LIMIT , 16384 +.equ DECODE_HEIGHT_LIMIT , 16384 + .section .note.GNU-stack,"",%progbits -Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_config.c +Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.c =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_config.c ++++ chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.c @@ -0,0 +1,10 @@ +/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */ +/* */ @@ -718,10 +718,10 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_ +#include "vpx/vpx_codec.h" +static const char* const cfg = "--target=generic-gnu --enable-vp9-highbitdepth --enable-external-build --enable-postproc --enable-multi-res-encoding --enable-temporal-denoising --enable-vp9-temporal-denoising --enable-vp9-postproc --size-limit=16384x16384 --enable-realtime-only --disable-install-docs --disable-libyuv"; +const char *vpx_codec_build_config(void) {return cfg;} -Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_config.h +Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.h =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_config.h ++++ chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_config.h @@ -0,0 +1,116 @@ +/* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */ +/* */ @@ -839,10 +839,10 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_ +#define DECODE_WIDTH_LIMIT 16384 +#define DECODE_HEIGHT_LIMIT 16384 +#endif /* VPX_CONFIG_H */ -Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h +Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h ++++ chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_dsp_rtcd.h @@ -0,0 +1,4128 @@ +// This file is generated. Do not edit. +#ifndef VPX_DSP_RTCD_H_ @@ -4972,10 +4972,10 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_ +#endif + +#endif -Index: chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h +Index: chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h =================================================================== --- /dev/null -+++ chromium-128.0.6613.113/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h ++++ chromium-130.0.6723.44/third_party/libvpx/source/config/linux/ppc64/vpx_scale_rtcd.h @@ -0,0 +1,96 @@ +// This file is generated. Do not edit. +#ifndef VPX_SCALE_RTCD_H_ diff --git a/SOURCES/0008-sandbox-fix-ppc64le-glibc234.patch b/SOURCES/0008-sandbox-fix-ppc64le-glibc234.patch index 6dd9d641..2e70fef9 100644 --- a/SOURCES/0008-sandbox-fix-ppc64le-glibc234.patch +++ b/SOURCES/0008-sandbox-fix-ppc64le-glibc234.patch @@ -1,7 +1,7 @@ -Index: chromium-128.0.6613.113/sandbox/policy/linux/bpf_utility_policy_linux.cc +Index: chromium-130.0.6723.44/sandbox/policy/linux/bpf_utility_policy_linux.cc =================================================================== ---- chromium-128.0.6613.113.orig/sandbox/policy/linux/bpf_utility_policy_linux.cc -+++ chromium-128.0.6613.113/sandbox/policy/linux/bpf_utility_policy_linux.cc +--- chromium-130.0.6723.44.orig/sandbox/policy/linux/bpf_utility_policy_linux.cc ++++ chromium-130.0.6723.44/sandbox/policy/linux/bpf_utility_policy_linux.cc @@ -34,7 +34,7 @@ ResultExpr UtilityProcessPolicy::Evaluat case __NR_fdatasync: case __NR_fsync: @@ -11,10 +11,10 @@ Index: chromium-128.0.6613.113/sandbox/policy/linux/bpf_utility_policy_linux.cc case __NR_getrlimit: #endif #if defined(__i386__) || defined(__arm__) -Index: chromium-128.0.6613.113/sandbox/policy/linux/bpf_renderer_policy_linux.cc +Index: chromium-130.0.6723.44/sandbox/policy/linux/bpf_renderer_policy_linux.cc =================================================================== ---- chromium-128.0.6613.113.orig/sandbox/policy/linux/bpf_renderer_policy_linux.cc -+++ chromium-128.0.6613.113/sandbox/policy/linux/bpf_renderer_policy_linux.cc +--- chromium-130.0.6723.44.orig/sandbox/policy/linux/bpf_renderer_policy_linux.cc ++++ chromium-130.0.6723.44/sandbox/policy/linux/bpf_renderer_policy_linux.cc @@ -87,7 +87,7 @@ ResultExpr RendererProcessPolicy::Evalua case __NR_ftruncate64: #endif @@ -24,10 +24,10 @@ Index: chromium-128.0.6613.113/sandbox/policy/linux/bpf_renderer_policy_linux.cc case __NR_getrlimit: case __NR_setrlimit: // We allow setrlimit to dynamically adjust the address space limit as -Index: chromium-128.0.6613.113/sandbox/linux/bpf_dsl/linux_syscall_ranges.h +Index: chromium-130.0.6723.44/sandbox/linux/bpf_dsl/linux_syscall_ranges.h =================================================================== ---- chromium-128.0.6613.113.orig/sandbox/linux/bpf_dsl/linux_syscall_ranges.h -+++ chromium-128.0.6613.113/sandbox/linux/bpf_dsl/linux_syscall_ranges.h +--- chromium-130.0.6723.44.orig/sandbox/linux/bpf_dsl/linux_syscall_ranges.h ++++ chromium-130.0.6723.44/sandbox/linux/bpf_dsl/linux_syscall_ranges.h @@ -58,9 +58,9 @@ #elif defined(__powerpc64__) @@ -40,11 +40,11 @@ Index: chromium-128.0.6613.113/sandbox/linux/bpf_dsl/linux_syscall_ranges.h #define MAX_SYSCALL MAX_PUBLIC_SYSCALL #else -Index: chromium-128.0.6613.113/sandbox/linux/services/credentials.cc +Index: chromium-130.0.6723.44/sandbox/linux/services/credentials.cc =================================================================== ---- chromium-128.0.6613.113.orig/sandbox/linux/services/credentials.cc -+++ chromium-128.0.6613.113/sandbox/linux/services/credentials.cc -@@ -94,7 +94,8 @@ bool ChrootToSafeEmptyDir() { +--- chromium-130.0.6723.44.orig/sandbox/linux/services/credentials.cc ++++ chromium-130.0.6723.44/sandbox/linux/services/credentials.cc +@@ -96,7 +96,8 @@ bool ChrootToSafeEmptyDir() { int clone_flags = CLONE_FS | LINUX_SIGCHLD; void* tls = nullptr; @@ -54,7 +54,7 @@ Index: chromium-128.0.6613.113/sandbox/linux/services/credentials.cc !defined(MEMORY_SANITIZER) // Use CLONE_VM | CLONE_VFORK as an optimization to avoid copying page tables. // Since clone writes to the new child's TLS before returning, we must set a -@@ -102,6 +103,11 @@ bool ChrootToSafeEmptyDir() { +@@ -104,6 +105,11 @@ bool ChrootToSafeEmptyDir() { // glibc performs syscalls by calling a function pointer in TLS, so we do not // attempt this optimization. // TODO(crbug.com/40196869) Broken in MSan builds after LLVM f1bb30a4956f. @@ -65,11 +65,11 @@ Index: chromium-128.0.6613.113/sandbox/linux/services/credentials.cc + // configuration loading failures and no fonts will be displayed! clone_flags |= CLONE_VM | CLONE_VFORK | CLONE_SETTLS; - // PTHREAD_STACK_MIN can be dynamic in glibc2.34+, so it is not possible to -Index: chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc + char tls_buf[PTHREAD_STACK_MIN_CONST] = {0}; +Index: chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc =================================================================== ---- chromium-128.0.6613.113.orig/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc -+++ chromium-128.0.6613.113/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc +--- chromium-130.0.6723.44.orig/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc ++++ chromium-130.0.6723.44/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc @@ -362,7 +362,16 @@ intptr_t SIGSYSFstatatHandler(const stru if (args.nr == __NR_fstatat_default) { if (*reinterpret_cast(args.args[1]) == '\0' && diff --git a/SOURCES/HACK-debian-clang-disable-skia-musttail.patch b/SOURCES/HACK-debian-clang-disable-skia-musttail.patch index 3ef861a5..0aee7d8a 100644 --- a/SOURCES/HACK-debian-clang-disable-skia-musttail.patch +++ b/SOURCES/HACK-debian-clang-disable-skia-musttail.patch @@ -1,13 +1,13 @@ -Index: chromium-128.0.6613.113/third_party/skia/src/core/SkRasterPipeline.h +Index: chromium-130.0.6723.44/third_party/skia/src/core/SkRasterPipeline.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/src/core/SkRasterPipeline.h -+++ chromium-128.0.6613.113/third_party/skia/src/core/SkRasterPipeline.h +--- chromium-130.0.6723.44.orig/third_party/skia/src/core/SkRasterPipeline.h ++++ chromium-130.0.6723.44/third_party/skia/src/core/SkRasterPipeline.h @@ -27,7 +27,7 @@ struct SkImageInfo; struct skcms_TransferFunction; #if __has_cpp_attribute(clang::musttail) && !defined(__EMSCRIPTEN__) && !defined(SK_CPU_ARM32) && \ -- !defined(SK_CPU_LOONGARCH) -+ !defined(SK_CPU_LOONGARCH) && !defined(__powerpc64__) +- !defined(SK_CPU_LOONGARCH) && !(defined(_WIN32) && defined(SK_BUILD_FOR_ANDROID_FRAMEWORK)) ++ !defined(SK_CPU_LOONGARCH) && !(defined(_WIN32) && defined(SK_BUILD_FOR_ANDROID_FRAMEWORK)) && !defined(__powerpc64__) + // [[clang::musttail]] is disabled for the Android version of Skia running on Windows as it + // causes crashes (This is probably related to http://crbug.com/1505442). #define SK_HAS_MUSTTAIL 1 - #else - #define SK_HAS_MUSTTAIL 0 diff --git a/SOURCES/HACK-third_party-libvpx-use-generic-gnu.patch b/SOURCES/HACK-third_party-libvpx-use-generic-gnu.patch index 895c6ad8..c4a92984 100644 --- a/SOURCES/HACK-third_party-libvpx-use-generic-gnu.patch +++ b/SOURCES/HACK-third_party-libvpx-use-generic-gnu.patch @@ -1,7 +1,7 @@ -Index: chromium-128.0.6613.113/third_party/libvpx/generate_gni.sh +Index: chromium-130.0.6723.44/third_party/libvpx/generate_gni.sh =================================================================== ---- chromium-128.0.6613.113.orig/third_party/libvpx/generate_gni.sh -+++ chromium-128.0.6613.113/third_party/libvpx/generate_gni.sh +--- chromium-130.0.6723.44.orig/third_party/libvpx/generate_gni.sh ++++ chromium-130.0.6723.44/third_party/libvpx/generate_gni.sh @@ -433,7 +433,7 @@ gen_config_files linux/mipsel "--target= gen_config_files linux/mips64el "--target=mips64-linux-gcc ${all_platforms}" gen_config_files linux/loongarch \ @@ -11,11 +11,11 @@ Index: chromium-128.0.6613.113/third_party/libvpx/generate_gni.sh gen_config_files linux/generic "--target=generic-gnu $HIGHBD ${all_platforms}" gen_config_files win/arm64-highbd \ "--target=arm64-win64-vs15 ${all_platforms} ${HIGHBD} ${disable_sve}" -Index: chromium-128.0.6613.113/third_party/libvpx/source/libvpx/build/make/rtcd.pl +Index: chromium-130.0.6723.44/third_party/libvpx/source/libvpx/build/make/rtcd.pl =================================================================== ---- chromium-128.0.6613.113.orig/third_party/libvpx/source/libvpx/build/make/rtcd.pl -+++ chromium-128.0.6613.113/third_party/libvpx/source/libvpx/build/make/rtcd.pl -@@ -508,8 +508,9 @@ if ($opts{arch} eq 'x86') { +--- chromium-130.0.6723.44.orig/third_party/libvpx/source/libvpx/build/make/rtcd.pl ++++ chromium-130.0.6723.44/third_party/libvpx/source/libvpx/build/make/rtcd.pl +@@ -509,8 +509,9 @@ if ($opts{arch} eq 'x86') { &require(@REQUIRES); arm; } elsif ($opts{arch} =~ /^ppc/ ) { @@ -27,10 +27,10 @@ Index: chromium-128.0.6613.113/third_party/libvpx/source/libvpx/build/make/rtcd. } elsif ($opts{arch} =~ /loongarch/ ) { @ALL_ARCHS = filter(qw/lsx lasx/); loongarch; -Index: chromium-128.0.6613.113/third_party/libvpx/BUILD.gn +Index: chromium-130.0.6723.44/third_party/libvpx/BUILD.gn =================================================================== ---- chromium-128.0.6613.113.orig/third_party/libvpx/BUILD.gn -+++ chromium-128.0.6613.113/third_party/libvpx/BUILD.gn +--- chromium-130.0.6723.44.orig/third_party/libvpx/BUILD.gn ++++ chromium-130.0.6723.44/third_party/libvpx/BUILD.gn @@ -102,6 +102,14 @@ config("libvpx_config") { "-Wno-sign-compare", ] diff --git a/SOURCES/cargo-add-ppc64.diff b/SOURCES/cargo-add-ppc64.diff index 275bf026..482f6f65 100644 --- a/SOURCES/cargo-add-ppc64.diff +++ b/SOURCES/cargo-add-ppc64.diff @@ -1,12 +1,13 @@ -diff -up chromium-129.0.6668.42/build/rust/cargo_crate.gni.me chromium-129.0.6668.42/build/rust/cargo_crate.gni ---- chromium-129.0.6668.42/build/rust/cargo_crate.gni.me 2024-09-16 14:19:49.407900780 +0200 -+++ chromium-129.0.6668.42/build/rust/cargo_crate.gni 2024-09-16 14:21:33.411392581 +0200 -@@ -429,7 +429,7 @@ template("cargo_crate") { - rust_abi_target, +Index: chromium-130.0.6723.44/build/rust/cargo_crate.gni +=================================================================== +--- chromium-130.0.6723.44.orig/build/rust/cargo_crate.gni ++++ chromium-130.0.6723.44/build/rust/cargo_crate.gni +@@ -430,7 +430,7 @@ template("cargo_crate") { ] } -- if (current_cpu == "arm64" || current_cpu == "x64") { -+ if (current_cpu == "arm64" || current_cpu == "x64" || current_cpu == "ppc64") { + if (current_cpu == "arm64" || current_cpu == "x64" || +- current_cpu == "loong64" || current_cpu == "riscv64") { ++ current_cpu == "loong64" || current_cpu == "riscv64" || current_cpu == "ppc64") { args += [ "--pointer-width", "64", diff --git a/SOURCES/chromium-130-hardware_destructive_interference_size.patch b/SOURCES/chromium-130-hardware_destructive_interference_size.patch new file mode 100644 index 00000000..8d02fd9b --- /dev/null +++ b/SOURCES/chromium-130-hardware_destructive_interference_size.patch @@ -0,0 +1,21 @@ +diff -up chromium-130.0.6723.44/components/media_router/common/providers/cast/channel/enum_table.h.me chromium-130.0.6723.44/components/media_router/common/providers/cast/channel/enum_table.h +--- chromium-130.0.6723.44/components/media_router/common/providers/cast/channel/enum_table.h.me 2024-10-15 09:58:39.571798463 +0200 ++++ chromium-130.0.6723.44/components/media_router/common/providers/cast/channel/enum_table.h 2024-10-15 09:59:46.209147226 +0200 +@@ -12,7 +12,6 @@ + + #include + #include +-#include + #include + #include + #include +@@ -368,7 +367,8 @@ class EnumTable { + + private: + #ifdef ARCH_CPU_64_BITS +- alignas(std::hardware_destructive_interference_size) ++ // Align the data on a cache line boundary. ++ alignas(64) + #endif + std::initializer_list data_; + bool is_sorted_; diff --git a/SOURCES/skia-vsx-instructions.patch b/SOURCES/skia-vsx-instructions.patch index 979354fd..53835cc6 100644 --- a/SOURCES/skia-vsx-instructions.patch +++ b/SOURCES/skia-vsx-instructions.patch @@ -1,8 +1,8 @@ -Index: chromium-128.0.6613.113/third_party/skia/BUILD.gn +Index: chromium-130.0.6723.44/third_party/skia/BUILD.gn =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/BUILD.gn -+++ chromium-128.0.6613.113/third_party/skia/BUILD.gn -@@ -195,6 +195,12 @@ opts("lasx") { +--- chromium-130.0.6723.44.orig/third_party/skia/BUILD.gn ++++ chromium-130.0.6723.44/third_party/skia/BUILD.gn +@@ -192,6 +192,12 @@ opts("lasx") { cflags = [ "-mlasx" ] } @@ -15,7 +15,7 @@ Index: chromium-128.0.6613.113/third_party/skia/BUILD.gn # Any feature of Skia that requires third-party code should be optional and use this template. template("optional") { if (invoker.enabled) { -@@ -1463,6 +1469,7 @@ skia_component("skia") { +@@ -1466,6 +1472,7 @@ skia_component("skia") { ":skx", ":typeface_fontations", ":vello", @@ -23,7 +23,7 @@ Index: chromium-128.0.6613.113/third_party/skia/BUILD.gn ":webp_decode", ":wuffs", ":xml", -@@ -1640,7 +1647,10 @@ skia_static_library("pathkit") { +@@ -1637,7 +1644,10 @@ skia_static_library("pathkit") { public_configs = [ ":skia_public" ] configs = skia_library_configs @@ -35,10 +35,10 @@ Index: chromium-128.0.6613.113/third_party/skia/BUILD.gn sources = [] sources += skia_pathops_sources -Index: chromium-128.0.6613.113/third_party/skia/gn/skia/BUILD.gn +Index: chromium-130.0.6723.44/third_party/skia/gn/skia/BUILD.gn =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/gn/skia/BUILD.gn -+++ chromium-128.0.6613.113/third_party/skia/gn/skia/BUILD.gn +--- chromium-130.0.6723.44.orig/third_party/skia/gn/skia/BUILD.gn ++++ chromium-130.0.6723.44/third_party/skia/gn/skia/BUILD.gn @@ -167,6 +167,8 @@ config("default") { "-mfpmath=sse", ] @@ -48,11 +48,11 @@ Index: chromium-128.0.6613.113/third_party/skia/gn/skia/BUILD.gn } else if (current_cpu == "loong64") { cflags += [ "-mlsx", -Index: chromium-128.0.6613.113/third_party/skia/include/core/SkTypes.h +Index: chromium-130.0.6723.44/third_party/skia/include/core/SkTypes.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/include/core/SkTypes.h -+++ chromium-128.0.6613.113/third_party/skia/include/core/SkTypes.h -@@ -195,5 +195,44 @@ static constexpr uint32_t SK_InvalidGenI +--- chromium-130.0.6723.44.orig/third_party/skia/include/core/SkTypes.h ++++ chromium-130.0.6723.44/third_party/skia/include/core/SkTypes.h +@@ -178,4 +178,43 @@ static constexpr uint32_t SK_InvalidGenI */ static constexpr uint32_t SK_InvalidUniqueID = 0; @@ -95,12 +95,11 @@ Index: chromium-128.0.6613.113/third_party/skia/include/core/SkTypes.h + #endif +#endif + - #endif -Index: chromium-128.0.6613.113/third_party/skia/src/base/SkSpinlock.cpp +Index: chromium-130.0.6723.44/third_party/skia/src/base/SkSpinlock.cpp =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/src/base/SkSpinlock.cpp -+++ chromium-128.0.6613.113/third_party/skia/src/base/SkSpinlock.cpp +--- chromium-130.0.6723.44.orig/third_party/skia/src/base/SkSpinlock.cpp ++++ chromium-130.0.6723.44/third_party/skia/src/base/SkSpinlock.cpp @@ -33,7 +33,8 @@ #endif @@ -111,10 +110,10 @@ Index: chromium-128.0.6613.113/third_party/skia/src/base/SkSpinlock.cpp #include static void do_pause() { _mm_pause(); } #else -Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkBitmapProcState_opts.h +Index: chromium-130.0.6723.44/third_party/skia/src/opts/SkBitmapProcState_opts.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/src/opts/SkBitmapProcState_opts.h -+++ chromium-128.0.6613.113/third_party/skia/src/opts/SkBitmapProcState_opts.h +--- chromium-130.0.6723.44.orig/third_party/skia/src/opts/SkBitmapProcState_opts.h ++++ chromium-130.0.6723.44/third_party/skia/src/opts/SkBitmapProcState_opts.h @@ -21,7 +21,13 @@ // The rest are scattershot at the moment but I want to get them // all migrated to be normal code inside SkBitmapProcState.cpp. @@ -130,10 +129,10 @@ Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkBitmapProcState_opts. #include #elif defined(SK_ARM_HAS_NEON) #include -Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkBlitRow_opts.h +Index: chromium-130.0.6723.44/third_party/skia/src/opts/SkBlitRow_opts.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/src/opts/SkBlitRow_opts.h -+++ chromium-128.0.6613.113/third_party/skia/src/opts/SkBlitRow_opts.h +--- chromium-130.0.6723.44.orig/third_party/skia/src/opts/SkBlitRow_opts.h ++++ chromium-130.0.6723.44/third_party/skia/src/opts/SkBlitRow_opts.h @@ -69,7 +69,7 @@ #endif @@ -143,10 +142,10 @@ Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkBlitRow_opts.h static inline __m128i SkPMSrcOver_SSE2(const __m128i& src, const __m128i& dst) { __m128i scale = _mm_sub_epi32(_mm_set1_epi32(256), -Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkRasterPipeline_opts.h +Index: chromium-130.0.6723.44/third_party/skia/src/opts/SkRasterPipeline_opts.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/src/opts/SkRasterPipeline_opts.h -+++ chromium-128.0.6613.113/third_party/skia/src/opts/SkRasterPipeline_opts.h +--- chromium-130.0.6723.44.orig/third_party/skia/src/opts/SkRasterPipeline_opts.h ++++ chromium-130.0.6723.44/third_party/skia/src/opts/SkRasterPipeline_opts.h @@ -1,5 +1,6 @@ /* * Copyright 2018 Google Inc. @@ -155,28 +154,28 @@ Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkRasterPipeline_opts.h * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. @@ -75,6 +76,8 @@ using NoCtx = const void*; - #define JUMPER_IS_SCALAR + #define SKRP_CPU_SCALAR #elif defined(SK_ARM_HAS_NEON) - #define JUMPER_IS_NEON + #define SKRP_CPU_NEON +#elif defined(SK_PPC64_HAS_SSE_COMPAT) -+ #define JUMPER_IS_VSX ++ #define SKRP_CPU_VSX #elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SKX - #define JUMPER_IS_SKX + #define SKRP_CPU_SKX #elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_AVX2 @@ -97,6 +100,8 @@ using NoCtx = const void*; #include - #elif defined(JUMPER_IS_NEON) + #elif defined(SKRP_CPU_NEON) #include -+#elif defined(JUMPER_IS_VSX) ++#elif defined(SKRP_CPU_VSX) + #include - #elif defined(JUMPER_IS_LASX) + #elif defined(SKRP_CPU_LASX) #include #include @@ -195,6 +200,184 @@ namespace SK_OPTS_NS { ptr[3] = a; } -+#elif defined(JUMPER_IS_VSX) ++#elif defined(SKRP_CPU_VSX) + // Since we know we're using Clang, we can use its vector extensions. + template using V = T __attribute__((ext_vector_type(4))); + using F = V; @@ -354,16 +353,16 @@ Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkRasterPipeline_opts.h + _mm_storeu_ps(ptr +12, a); + } + - #elif defined(JUMPER_IS_NEON) + #elif defined(SKRP_CPU_NEON) template using V = Vec<4, T>; using F = V; @@ -1401,6 +1584,15 @@ SI F from_half(U16 h) { - #elif defined(JUMPER_IS_HSW) + #elif defined(SKRP_CPU_HSW) return _mm256_cvtph_ps((__m128i)h); +// Disabled for now as this is not a particularly hot function +// and there is no good reason to lock Chromium to POWER9+ yet. -+#elif 0 && defined(JUMPER_IS_VSX) && __has_builtin(__builtin_vsx_xvcvhpsp) ++#elif 0 && defined(SKRP_CPU_VSX) && __has_builtin(__builtin_vsx_xvcvhpsp) + #if defined(SK_CPU_LENDIAN) + return __builtin_vsx_xvcvhpsp({h[0], 0, h[1], 0, h[2], 0, h[3], 0}); + #else @@ -374,12 +373,12 @@ Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkRasterPipeline_opts.h // Remember, a half is 1-5-10 (sign-exponent-mantissa) with 15 exponent bias. U32 sem = expand(h), @@ -1424,6 +1616,16 @@ SI U16 to_half(F f) { - #elif defined(JUMPER_IS_HSW) + #elif defined(SKRP_CPU_HSW) return (U16)_mm256_cvtps_ph(f, _MM_FROUND_CUR_DIRECTION); +// Disabled for now as this is not a particularly hot function +// and there is no good reason to lock Chromium to POWER9+ yet. -+#elif 0 && defined(JUMPER_IS_VSX) && __has_builtin(__builtin_vsx_xvcvsphp) ++#elif 0 && defined(SKRP_CPU_VSX) && __has_builtin(__builtin_vsx_xvcvsphp) + __vector unsigned short v = __builtin_vsx_xvcvsphp(f); + #if defined(SK_CPU_LENDIAN) + return U16{v[0], v[2], v[4], v[6]}; @@ -393,47 +392,47 @@ Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkRasterPipeline_opts.h @@ -1499,7 +1701,7 @@ static constexpr size_t N = sizeof(F) / // instead of {b,a} on the stack. Narrow stages work best for __vectorcall. #define ABI __vectorcall - #define JUMPER_NARROW_STAGES 1 + #define SKRP_NARROW_STAGES 1 -#elif defined(__x86_64__) || defined(SK_CPU_ARM64) || defined(SK_CPU_LOONGARCH) +#elif defined(__x86_64__) || defined(SK_CPU_ARM64) || defined(SK_CPU_LOONGARCH) || defined(SK_CPU_PPC64) // These platforms are ideal for wider stages, and their default ABI is ideal. #define ABI - #define JUMPER_NARROW_STAGES 0 -@@ -5477,6 +5679,10 @@ SI F sqrt_(F x) { + #define SKRP_NARROW_STAGES 0 +@@ -5481,6 +5683,10 @@ SI F sqrt_(F x) { float32x4_t lo,hi; split(x, &lo,&hi); return join(sqrt(lo), sqrt(hi)); -+#elif defined(JUMPER_IS_VSX) ++#elif defined(SKRP_CPU_VSX) + vector float lo,hi; + split(x, &lo,&hi); + return join(vec_sqrt(lo), vec_sqrt(hi)); - #elif defined(JUMPER_IS_LASX) + #elif defined(SKRP_CPU_LASX) __m256 lo,hi; split(x, &lo,&hi); -@@ -5508,6 +5714,10 @@ SI F floor_(F x) { +@@ -5512,6 +5718,10 @@ SI F floor_(F x) { __m128 lo,hi; split(x, &lo,&hi); return join(_mm_floor_ps(lo), _mm_floor_ps(hi)); -+#elif defined(JUMPER_IS_VSX) ++#elif defined(SKRP_CPU_VSX) + vector float lo,hi; + split(x, &lo,&hi); + return join(vec_floor(lo), vec_floor(hi)); - #elif defined(JUMPER_IS_LASX) + #elif defined(SKRP_CPU_LASX) __m256 lo,hi; split(x, &lo,&hi); -@@ -5527,6 +5737,7 @@ SI F floor_(F x) { +@@ -5531,6 +5741,7 @@ SI F floor_(F x) { // (2 * a * b + (1 << 15)) >> 16 // The result is a number on [-1, 1). // Note: on neon this is a saturating multiply while the others are not. +// Note: for POWER, the code below was borrowed from emmintrin.h SI I16 scaled_mult(I16 a, I16 b) { - #if defined(JUMPER_IS_SKX) + #if defined(SKRP_CPU_SKX) return (I16)_mm256_mulhrs_epi16((__m256i)a, (__m256i)b); -@@ -5538,6 +5749,22 @@ SI I16 scaled_mult(I16 a, I16 b) { +@@ -5542,6 +5753,22 @@ SI I16 scaled_mult(I16 a, I16 b) { return vqrdmulhq_s16(a, b); - #elif defined(JUMPER_IS_NEON) + #elif defined(SKRP_CPU_NEON) return vqrdmulhq_s16(a, b); -+#elif defined(JUMPER_IS_VSX) ++#elif defined(SKRP_CPU_VSX) + const vector unsigned int shift = vec_splats((unsigned int)14); + const vector int ones = vec_splats((signed int)1); + vector int c = vec_unpackh((vector short)a); @@ -449,10 +448,10 @@ Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkRasterPipeline_opts.h + d = vec_add(d, ones); + d = vec_sr(d,(vector unsigned int)ones); + return vec_pack(c, d); - #elif defined(JUMPER_IS_LASX) + #elif defined(SKRP_CPU_LASX) I16 res = __lasx_xvmuh_h(a, b); return __lasx_xvslli_h(res, 1); -@@ -5565,7 +5792,26 @@ SI U16 constrained_add(I16 a, U16 b) { +@@ -5569,7 +5796,26 @@ SI U16 constrained_add(I16 a, U16 b) { SkASSERT(-ib <= ia && ia <= 65535 - ib); } #endif @@ -461,7 +460,7 @@ Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkRasterPipeline_opts.h + // Just because it sort of seems to work on Intel/ARM on Clang doesn't mean it works everywhere... + // FIXME: For added fun, the existing Skia unit tests do NOT properly test for issues in the + // lowp bilerp path. Investigate and write an appropriate test case... -+#if defined(JUMPER_IS_VSX) ++#if defined(SKRP_CPU_VSX) + // Most POWER compilers end up doing some kind of width promotion that causes memory corruption + // and/or incorrect results. This shows up as snow and general graphics corruption, especially + // noticeable when trying to display a PNG at less than 50% size (resize the browser window down @@ -479,11 +478,11 @@ Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkRasterPipeline_opts.h } SI F fract(F x) { return x - floor_(x); } -@@ -6574,8 +6820,14 @@ STAGE_GP(bilerp_clamp_8888, const SkRast +@@ -6582,8 +6828,14 @@ STAGE_GP(bilerp_clamp_8888, const SkRast // 2^-8 * v = 2^-9 * (tx*(R - L) + (R + L)) // v = 1/2 * (tx*(R - L) + (R + L)) auto lerpX = [&](U16 left, U16 right) -> U16 { -+#if defined(JUMPER_IS_VSX) ++#if defined(SKRP_CPU_VSX) + // constrained_add() on POWER is run in half precision mode to avoid undefined behavior + I16 width = (I16)(right - left) << 6; + U16 middle = (right + left) << 6; @@ -494,11 +493,11 @@ Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkRasterPipeline_opts.h // The constrained_add is the most subtle part of lerp. The first term is on the interval // [-1, 1), and the second term is on the interval is on the interval [0, 1) because // both terms are too high by a factor of 2 which will be handled below. (Both R and L are -@@ -6587,7 +6839,12 @@ STAGE_GP(bilerp_clamp_8888, const SkRast +@@ -6595,7 +6847,12 @@ STAGE_GP(bilerp_clamp_8888, const SkRast U16 v2 = constrained_add(scaled_mult(tx, width), middle) + 1; // Divide by 2 to calculate v and at the same time bring the intermediate value onto the // interval [0, 1/2] to set up for the lerpY. -+#if defined(JUMPER_IS_VSX) ++#if defined(SKRP_CPU_VSX) + // constrained_add() on POWER is run in half precision mode to avoid undefined behavior + return v2; +#else @@ -507,11 +506,11 @@ Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkRasterPipeline_opts.h }; const uint32_t* ptr; -@@ -6621,9 +6878,15 @@ STAGE_GP(bilerp_clamp_8888, const SkRast +@@ -6629,9 +6886,15 @@ STAGE_GP(bilerp_clamp_8888, const SkRast I16 width = (I16)bottom - (I16)top; U16 middle = bottom + top; // Add + 0x80 for rounding. -+#if defined(JUMPER_IS_VSX) ++#if defined(SKRP_CPU_VSX) + // constrained_add() on POWER is run in half precision mode to avoid undefined behavior + U16 blend = constrained_add(scaled_mult(ty, width) / 2, middle / 2) + (0x80 / 2); + return blend >> 7; @@ -524,10 +523,10 @@ Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkRasterPipeline_opts.h }; r = lerpY(topR, bottomR); -Index: chromium-128.0.6613.113/third_party/skia/src/base/SkVx.h +Index: chromium-130.0.6723.44/third_party/skia/src/base/SkVx.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/src/base/SkVx.h -+++ chromium-128.0.6613.113/third_party/skia/src/base/SkVx.h +--- chromium-130.0.6723.44.orig/third_party/skia/src/base/SkVx.h ++++ chromium-130.0.6723.44/third_party/skia/src/base/SkVx.h @@ -42,7 +42,13 @@ #if SKVX_USE_SIMD @@ -543,10 +542,10 @@ Index: chromium-128.0.6613.113/third_party/skia/src/base/SkVx.h #elif defined(SK_ARM_HAS_NEON) #include #elif defined(__wasm_simd128__) -Index: chromium-128.0.6613.113/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp +Index: chromium-130.0.6723.44/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp -+++ chromium-128.0.6613.113/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp +--- chromium-130.0.6723.44.orig/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp ++++ chromium-130.0.6723.44/third_party/skia/src/core/SkBlitMask_opts_ssse3.cpp @@ -9,7 +9,7 @@ #include "src/core/SkBlitMask.h" #include "src/core/SkOptsTargets.h" @@ -556,10 +555,10 @@ Index: chromium-128.0.6613.113/third_party/skia/src/core/SkBlitMask_opts_ssse3.c // The order of these includes is important: // 1) Select the target CPU architecture by defining SK_OPTS_TARGET and including SkOpts_SetTarget -Index: chromium-128.0.6613.113/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp +Index: chromium-130.0.6723.44/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp -+++ chromium-128.0.6613.113/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp +--- chromium-130.0.6723.44.orig/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp ++++ chromium-130.0.6723.44/third_party/skia/src/core/SkSwizzler_opts_ssse3.cpp @@ -10,7 +10,7 @@ #include "src/core/SkOptsTargets.h" #include "src/core/SkSwizzlePriv.h" @@ -569,10 +568,10 @@ Index: chromium-128.0.6613.113/third_party/skia/src/core/SkSwizzler_opts_ssse3.c !defined(SK_ENABLE_OPTIMIZE_SIZE) && \ SK_CPU_SSE_LEVEL < SK_CPU_SSE_LEVEL_SSSE3 -Index: chromium-128.0.6613.113/third_party/skia/src/core/SkBlitMask_opts.cpp +Index: chromium-130.0.6723.44/third_party/skia/src/core/SkBlitMask_opts.cpp =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/src/core/SkBlitMask_opts.cpp -+++ chromium-128.0.6613.113/third_party/skia/src/core/SkBlitMask_opts.cpp +--- chromium-130.0.6723.44.orig/third_party/skia/src/core/SkBlitMask_opts.cpp ++++ chromium-130.0.6723.44/third_party/skia/src/core/SkBlitMask_opts.cpp @@ -25,7 +25,7 @@ namespace SkOpts { static bool init() { #if defined(SK_ENABLE_OPTIMIZE_SIZE) @@ -582,10 +581,10 @@ Index: chromium-128.0.6613.113/third_party/skia/src/core/SkBlitMask_opts.cpp #if SK_CPU_SSE_LEVEL < SK_CPU_SSE_LEVEL_SSSE3 if (SkCpu::Supports(SkCpu::SSSE3)) { Init_BlitMask_ssse3(); } #endif -Index: chromium-128.0.6613.113/third_party/skia/src/core/SkBitmapProcState_opts.cpp +Index: chromium-130.0.6723.44/third_party/skia/src/core/SkBitmapProcState_opts.cpp =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/src/core/SkBitmapProcState_opts.cpp -+++ chromium-128.0.6613.113/third_party/skia/src/core/SkBitmapProcState_opts.cpp +--- chromium-130.0.6723.44.orig/third_party/skia/src/core/SkBitmapProcState_opts.cpp ++++ chromium-130.0.6723.44/third_party/skia/src/core/SkBitmapProcState_opts.cpp @@ -27,7 +27,7 @@ namespace SkOpts { static bool init() { #if defined(SK_ENABLE_OPTIMIZE_SIZE) @@ -595,10 +594,10 @@ Index: chromium-128.0.6613.113/third_party/skia/src/core/SkBitmapProcState_opts. #if SK_CPU_SSE_LEVEL < SK_CPU_SSE_LEVEL_SSSE3 if (SkCpu::Supports(SkCpu::SSSE3)) { Init_BitmapProcState_ssse3(); } #endif -Index: chromium-128.0.6613.113/third_party/skia/src/core/SkCpu.h +Index: chromium-130.0.6723.44/third_party/skia/src/core/SkCpu.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/src/core/SkCpu.h -+++ chromium-128.0.6613.113/third_party/skia/src/core/SkCpu.h +--- chromium-130.0.6723.44.orig/third_party/skia/src/core/SkCpu.h ++++ chromium-130.0.6723.44/third_party/skia/src/core/SkCpu.h @@ -60,7 +60,7 @@ inline bool SkCpu::Supports(uint32_t mas // If we mask in compile-time known lower limits, the compiler can @@ -608,10 +607,10 @@ Index: chromium-128.0.6613.113/third_party/skia/src/core/SkCpu.h #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE1 features |= SSE1; #endif -Index: chromium-128.0.6613.113/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp +Index: chromium-130.0.6723.44/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp -+++ chromium-128.0.6613.113/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp +--- chromium-130.0.6723.44.orig/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp ++++ chromium-130.0.6723.44/third_party/skia/src/core/SkBitmapProcState_opts_ssse3.cpp @@ -8,7 +8,7 @@ #include "include/private/base/SkFeatures.h" #include "src/core/SkOptsTargets.h" @@ -621,10 +620,10 @@ Index: chromium-128.0.6613.113/third_party/skia/src/core/SkBitmapProcState_opts_ // The order of these includes is important: // 1) Select the target CPU architecture by defining SK_OPTS_TARGET and including SkOpts_SetTarget -Index: chromium-128.0.6613.113/third_party/skia/include/private/base/SkFeatures.h +Index: chromium-130.0.6723.44/third_party/skia/include/private/base/SkFeatures.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/include/private/base/SkFeatures.h -+++ chromium-128.0.6613.113/third_party/skia/include/private/base/SkFeatures.h +--- chromium-130.0.6723.44.orig/third_party/skia/include/private/base/SkFeatures.h ++++ chromium-130.0.6723.44/third_party/skia/include/private/base/SkFeatures.h @@ -63,6 +63,8 @@ #if defined(__i386) || defined(_M_IX86) || defined(__x86_64__) || defined(_M_X64) @@ -634,10 +633,10 @@ Index: chromium-128.0.6613.113/third_party/skia/include/private/base/SkFeatures. #endif #if defined(__loongarch__) || defined (__loongarch64) -Index: chromium-128.0.6613.113/third_party/skia/modules/skcms/src/skcms_internals.h +Index: chromium-130.0.6723.44/third_party/skia/modules/skcms/src/skcms_internals.h =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/modules/skcms/src/skcms_internals.h -+++ chromium-128.0.6613.113/third_party/skia/modules/skcms/src/skcms_internals.h +--- chromium-130.0.6723.44.orig/third_party/skia/modules/skcms/src/skcms_internals.h ++++ chromium-130.0.6723.44/third_party/skia/modules/skcms/src/skcms_internals.h @@ -47,6 +47,7 @@ extern "C" { && !defined(__EMSCRIPTEN__) \ && !defined(__arm__) \ @@ -646,10 +645,10 @@ Index: chromium-128.0.6613.113/third_party/skia/modules/skcms/src/skcms_internal && !defined(__loongarch__) \ && !defined(_WIN32) && !defined(__SYMBIAN32__) #define SKCMS_HAS_MUSTTAIL 1 -Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkSwizzler_opts.inc +Index: chromium-130.0.6723.44/third_party/skia/src/opts/SkSwizzler_opts.inc =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/src/opts/SkSwizzler_opts.inc -+++ chromium-128.0.6613.113/third_party/skia/src/opts/SkSwizzler_opts.inc +--- chromium-130.0.6723.44.orig/third_party/skia/src/opts/SkSwizzler_opts.inc ++++ chromium-130.0.6723.44/third_party/skia/src/opts/SkSwizzler_opts.inc @@ -14,7 +14,10 @@ #include #include @@ -696,10 +695,10 @@ Index: chromium-128.0.6613.113/third_party/skia/src/opts/SkSwizzler_opts.inc #elif SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE1 && (defined(__clang__) || !defined(_MSC_VER)) // -- SSE -- Harden against timing attacks -- MSVC is not supported. using F4 = __m128; -Index: chromium-128.0.6613.113/third_party/skia/src/core/SkBlitter_ARGB32.cpp +Index: chromium-130.0.6723.44/third_party/skia/src/core/SkBlitter_ARGB32.cpp =================================================================== ---- chromium-128.0.6613.113.orig/third_party/skia/src/core/SkBlitter_ARGB32.cpp -+++ chromium-128.0.6613.113/third_party/skia/src/core/SkBlitter_ARGB32.cpp +--- chromium-130.0.6723.44.orig/third_party/skia/src/core/SkBlitter_ARGB32.cpp ++++ chromium-130.0.6723.44/third_party/skia/src/core/SkBlitter_ARGB32.cpp @@ -126,6 +126,16 @@ static inline SkPMColor blend_lcd16_opaq #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2 #include diff --git a/SPECS/chromium.spec b/SPECS/chromium.spec index cebc1936..117c2fa6 100644 --- a/SPECS/chromium.spec +++ b/SPECS/chromium.spec @@ -84,7 +84,7 @@ %endif %endif -%if 0%{?fedora} >= 40 +%if 0%{?fedora} >= 40 || 0%{?rhel} >= 9 %global noopenh264 1 %endif @@ -273,7 +273,7 @@ %endif Name: chromium%{chromium_channel} -Version: 129.0.6668.100 +Version: 130.0.6723.58 Release: 1%{?dist} Summary: A WebKit (Blink) powered web browser that Google doesn't want you to use Url: http://www.chromium.org/Home @@ -351,6 +351,9 @@ Patch353: chromium-127-aarch64-duplicate-case-value.patch # remove flag split-threshold-for-reg-with-hint, it's not supported in clang <= 17 Patch354: chromium-126-split-threshold-for-reg-with-hint.patch +# fix build error: no member named 'hardware_destructive_interference_size' in namespace 'std' +Patch355: chromium-130-hardware_destructive_interference_size.patch + # set clang_lib path Patch358: chromium-127-rust-clanglib.patch @@ -491,15 +494,6 @@ BuildRequires: pkgconfig(libavcodec) BuildRequires: pkgconfig(libavfilter) BuildRequires: pkgconfig(libavformat) BuildRequires: pkgconfig(libavutil) -# chromium fail to start for rpmfusion users due to ABI break in ffmpeg-free-6.0.1 -# bethween fedora and rpmfussion. -%if 0%{?rhel} == 9 || 0%{?fedora} == 37 -Conflicts: libavformat-free%{_isa} < 5.1.4 -Conflicts: ffmpeg-libs%{_isa} < 5.1.4 -%else -Conflicts: libavformat-free%{_isa} < 6.0.1 -Conflicts: ffmpeg-libs%{_isa} < 6.0.1-2 -%endif %endif %if 0%{?noopenh264} @@ -1063,6 +1057,7 @@ Qt6 UI for chromium. %patch -P354 -p1 -b .split-threshold-for-reg-with-hint %endif +%patch -P355 -p1 -b .hardware_destructive_interference_size %patch -P358 -p1 -b .rust-clang_lib %ifarch ppc64le @@ -1915,6 +1910,22 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt %endif %changelog +* Wed Oct 16 2024 Than Ngo - 130.0.6723.58-1 +- update to 130.0.6723.58 + * High CVE-2024-9954: Use after free in AI + * Medium CVE-2024-9955: Use after free in Web Authentication + * Medium CVE-2024-9956: Inappropriate implementation in Web Authentication + * Medium CVE-2024-9957: Use after free in UI + * Medium CVE-2024-9958: Inappropriate implementation in PictureInPicture + * Medium CVE-2024-9959: Use after free in DevTools + * Medium CVE-2024-9960: Use after free in Dawn + * Medium CVE-2024-9961: Use after free in Parcel Tracking + * Medium CVE-2024-9962: Inappropriate implementation in Permissions + * Medium CVE-2024-9963: Insufficient data validation in Downloads + * Low CVE-2024-9964: Inappropriate implementation in Payments + * Low CVE-2024-9965: Insufficient data validation in DevTools + * Low CVE-2024-9966: Inappropriate implementation in Navigations + * Wed Oct 09 2024 Than Ngo - 129.0.6668.100-1 - update to 129.0.6668.100 * CVE-2024-9602: Type Confusion in V8