kudu-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From a...@apache.org
Subject [kudu] 03/03: thirdparty: upgrade libunwind to 1.3.1
Date Mon, 27 May 2019 22:07:20 GMT
This is an automated email from the ASF dual-hosted git repository.

adar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kudu.git

commit 84a6137a879d61fd468cc605a771f507419a6820
Author: Adar Dembo <adar@cloudera.com>
AuthorDate: Sun May 26 11:57:20 2019 -0700

    thirdparty: upgrade libunwind to 1.3.1
    
    This fixes a bug[1] that prevents libunwind from being built with modern
    versions of the gold and LLD linkers. The update includes one of our custom
    patches, but not the other.
    
    1. https://github.com/libunwind/libunwind/issues/58
    
    Change-Id: If810954d80c63dca4b350defc2c1b915ad4d06f4
    Reviewed-on: http://gerrit.cloudera.org:8080/13439
    Reviewed-by: Andrew Wong <awong@cloudera.com>
    Tested-by: Adar Dembo <adar@cloudera.com>
---
 thirdparty/download-thirdparty.sh                  |  3 +-
 ...-directly-in-write_validate-to-avoid-ASAN.patch | 43 ----------------------
 thirdparty/vars.sh                                 |  2 +-
 3 files changed, 2 insertions(+), 46 deletions(-)

diff --git a/thirdparty/download-thirdparty.sh b/thirdparty/download-thirdparty.sh
index d4213ff..d883884 100755
--- a/thirdparty/download-thirdparty.sh
+++ b/thirdparty/download-thirdparty.sh
@@ -304,12 +304,11 @@ fetch_and_patch \
  $CRCUTIL_PATCHLEVEL \
  "patch -p0 < $TP_DIR/patches/crcutil-fix-libtoolize-on-osx.patch"
 
-LIBUNWIND_PATCHLEVEL=2
+LIBUNWIND_PATCHLEVEL=1
 fetch_and_patch \
  libunwind-${LIBUNWIND_VERSION}.tar.gz \
  $LIBUNWIND_SOURCE \
  $LIBUNWIND_PATCHLEVEL \
- "patch -p1 < $TP_DIR/patches/libunwind-Use-syscall-directly-in-write_validate-to-avoid-ASAN.patch"
\
  "patch -p1 < $TP_DIR/patches/libunwind-trace-cache-destructor.patch"
 
 PYTHON_PATCHLEVEL=0
diff --git a/thirdparty/patches/libunwind-Use-syscall-directly-in-write_validate-to-avoid-ASAN.patch
b/thirdparty/patches/libunwind-Use-syscall-directly-in-write_validate-to-avoid-ASAN.patch
deleted file mode 100644
index ef68266..0000000
--- a/thirdparty/patches/libunwind-Use-syscall-directly-in-write_validate-to-avoid-ASAN.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 7d6cc6696ab8a808da3dbe23ca2493ddf2799b56 Mon Sep 17 00:00:00 2001
-From: Dave Watson <davejwatson@fb.com>
-Date: Wed, 17 Jan 2018 08:04:05 -0800
-Subject: [PATCH 1/1] Use syscall directly in write_validate to avoid ASAN
- errors
-
-ASAN will complain about this write call with the following error:
-
-ERROR: AddressSanitizer: stack-buffer-underflow on address
-HINT: this may be a false positive if your program uses some custom stack unwind mechanism
or swapcontext
-
-This is similar to what google's abseil does to work around the issue.
-
-Reported-by: qiwang@fb.com
----
- src/x86_64/Ginit.c | 4 +++-
- 2 files changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/src/x86_64/Ginit.c b/src/x86_64/Ginit.c
-index 6281b76..2a84a1e 100644
---- a/src/x86_64/Ginit.c
-+++ b/src/x86_64/Ginit.c
-@@ -34,6 +34,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  */
- #include <stdlib.h>
- #include <string.h>
- #include <sys/mman.h>
-+#include <sys/syscall.h>
- 
- #include "unwind_i.h"
- 
-@@ -107,7 +108,8 @@ write_validate (void *addr)
- 
-   do
-     {
--      ret = write (mem_validate_pipe[1], addr, 1);
-+      /* use syscall insteadof write() so that ASAN does not complain */
-+      ret = syscall (SYS_write, mem_validate_pipe[1], addr, 1);
-     }
-   while ( errno == EINTR );
- 
--- 
-2.7.4
-
diff --git a/thirdparty/vars.sh b/thirdparty/vars.sh
index a291e36..fd8a82b 100644
--- a/thirdparty/vars.sh
+++ b/thirdparty/vars.sh
@@ -138,7 +138,7 @@ CRCUTIL_VERSION=42148a6df6986a257ab21c80f8eca2e54544ac4d
 CRCUTIL_NAME=crcutil-$CRCUTIL_VERSION
 CRCUTIL_SOURCE=$TP_SOURCE_DIR/$CRCUTIL_NAME
 
-LIBUNWIND_VERSION=1.3-rc1
+LIBUNWIND_VERSION=1.3.1
 LIBUNWIND_NAME=libunwind-$LIBUNWIND_VERSION
 LIBUNWIND_SOURCE=$TP_SOURCE_DIR/$LIBUNWIND_NAME
 


Mime
View raw message