Skip to content

Commit ffb6e8b

Browse files
committed
chromium: Fix SIGILL on RPI4
Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 parent 3b4aeda commit ffb6e8b

File tree

2 files changed

+19
-0
lines changed

2 files changed

+19
-0
lines changed

meta-chromium/recipes-browser/chromium/chromium-gn.inc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ SRC_URI += " \
3535
file://0037-Fix-constexpr-variable-cannot-have-non-literal-type-.patch \
3636
file://0038-Fix-undefined-symbol-PaintOpWriter-SerializedSize-un.patch \
3737
"
38+
SRC_URI:append:aarch64 = "${@bb.utils.contains('TUNE_FEATURES', 'crypto', '', ' file://boringssl_no_asm_config.patch', d)}"
3839

3940
SRC_URI:append:libc-musl = "\
4041
file://musl/0001-mallinfo-implementation-is-glibc-specific.patch \
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
Disable assembly routines on arm64/rpi4 since it uses
2+
AES crypto extentions and these extentions do not exist in rpi4
3+
4+
This fixes random SIGILL seen in aes_hw_set_encrypt_key() on rpi4-64
5+
6+
Upstream-Status: Inappropriate [Specific to armv8 minus crypto]
7+
Signed-off-by: Khem Raj <raj.khem@gmail.com>
8+
--- a/third_party/boringssl/BUILD.gn
9+
+++ b/third_party/boringssl/BUILD.gn
10+
@@ -94,7 +94,7 @@ if (enable_rust_boringssl) {
11+
}
12+
}
13+
14+
-if (is_msan) {
15+
+if (is_msan || current_cpu == "arm64") {
16+
# MSan instrumentation is incompatible with assembly optimizations.
17+
# BoringSSL's GAS-compatible assembly knows how to detect MSan, but the NASM
18+
# assembly does not, so we check for MSan explicitly.

0 commit comments

Comments
 (0)