aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2021-05-11 11:15:25 -0700
committerKhem Raj <raj.khem@gmail.com>2021-05-11 11:16:03 -0700
commit42e2ec56c7d96fd715fef90d76db393480ddaa66 (patch)
tree6fa7920c2e8acac1ed8f58016278ce9e85cb41d7
parente9a53d389a12c65839ca72a1a6777fe36dc566bb (diff)
downloadmeta-openembedded-42e2ec56c7d96fd715fef90d76db393480ddaa66.tar.gz
breakpad: Fix type mismatch for SIGSTKSZ
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--meta-oe/recipes-devtools/breakpad/breakpad/0001-exception_handler.cc-Match-the-types-for-SIGSTKSZ.patch34
-rw-r--r--meta-oe/recipes-devtools/breakpad/breakpad_git.bb1
2 files changed, 35 insertions, 0 deletions
diff --git a/meta-oe/recipes-devtools/breakpad/breakpad/0001-exception_handler.cc-Match-the-types-for-SIGSTKSZ.patch b/meta-oe/recipes-devtools/breakpad/breakpad/0001-exception_handler.cc-Match-the-types-for-SIGSTKSZ.patch
new file mode 100644
index 0000000000..afe8a61b29
--- /dev/null
+++ b/meta-oe/recipes-devtools/breakpad/breakpad/0001-exception_handler.cc-Match-the-types-for-SIGSTKSZ.patch
@@ -0,0 +1,34 @@
+From 66a2b6e4ba8e2b49115043127ce4aa0fcd71ad1e Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 11 May 2021 11:12:35 -0700
+Subject: [PATCH] exception_handler.cc: Match the types for SIGSTKSZ
+
+In glibc 2.34, SIGSTKSZ is a syscall which returns a long int, therefore
+current check fails
+
+| ../git/src/client/linux/handler/exception_handler.cc:141:49: error: no matching function for call to 'max(int, long int)'
+| 141 | static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ);
+| | ~~~~~~~~^~~~~~~~~~~~~~~~~
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/client/linux/handler/exception_handler.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/client/linux/handler/exception_handler.cc b/src/client/linux/handler/exception_handler.cc
+index ca353c40..dc0fc4a9 100644
+--- a/src/client/linux/handler/exception_handler.cc
++++ b/src/client/linux/handler/exception_handler.cc
+@@ -138,7 +138,7 @@ void InstallAlternateStackLocked() {
+ // SIGSTKSZ may be too small to prevent the signal handlers from overrunning
+ // the alternative stack. Ensure that the size of the alternative stack is
+ // large enough.
+- static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ);
++ static const unsigned kSigStackSize = std::max(16384u, (unsigned)SIGSTKSZ);
+
+ // Only set an alternative stack if there isn't already one, or if the current
+ // one is too small.
+--
+2.31.1
+
diff --git a/meta-oe/recipes-devtools/breakpad/breakpad_git.bb b/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
index 81955f450d..4756ef772d 100644
--- a/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
+++ b/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
@@ -40,6 +40,7 @@ SRC_URI = "git://github.com/google/breakpad;name=breakpad;branch=main \
file://0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch \
file://mcontext.patch \
file://0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.patch \
+ file://0001-exception_handler.cc-Match-the-types-for-SIGSTKSZ.patch \
file://0001-lss-Match-syscalls-to-match-musl.patch;patchdir=src/third_party/lss \
file://mips_asm_sgidefs.patch;patchdir=src/third_party/lss \
file://0001-Do-not-add-stack-pointer-to-clobber-list.patch;patchdir=src/third_party/lss \