Skip to content

Commit

Permalink
[thirdparty] upgrade libunwind to 1.7.2 version
Browse files Browse the repository at this point in the history
This update helps to prevent SIGSEGV in libunwind when running Kudu on
aarch64 (in particular, Graviton3 instances in EC2).  An example of stack
trace looked like below, and it's similar to the stack mentioned in [1]:

  #0  access_mem (as=0x3304418 <local_addr_space>, addr=7745970402396146688,
      val=0xfffff325ca18, write=0, arg=0xfffff325ce70)
      at thirdparty/src/libunwind-1.6.2/src/aarch64/Ginit.c:337
  #1  0x0000000000a97ac0 in is_plt_entry (c=0xfffff325ce70)
      at thirdparty/src/libunwind-1.6.2/src/aarch64/Gstep.c:43
  #2  0x0000000000a97fdc in _ULaarch64_step (cursor=0xfffff325ce70)
      at thirdparty/src/libunwind-1.6.2/src/aarch64/Gstep.c:171
  #3  0x00000000025050c8 in kudu::StackTrace::Collect (
      this=this@entry=0xfffff325d7d8, skip_frames=skip_frames@entry=0)
      at src/kudu/util/debug-util.cc:612
  #4  0x0000000002507f64 in kudu::StackTrace::Collect (
      this=this@entry=0xfffff325d7d8, skip_frames=skip_frames@entry=0)
      at src/kudu/util/debug-util.cc:579

[1] libunwind/libunwind#260

Change-Id: Ie34dc56f78abba537aa15dd3d9c0540157d9afa3
Reviewed-on: http://gerrit.cloudera.org:8080/20540
Tested-by: Kudu Jenkins
Reviewed-by: Michael Smith <[email protected]>
Reviewed-by: Mahesh Reddy <[email protected]>
Reviewed-by: Abhishek Chennaka <[email protected]>
(cherry picked from commit dd5fd45)
Reviewed-on: http://gerrit.cloudera.org:8080/20542
alexeyserbin authored and achennaka committed Oct 7, 2023
1 parent 959b0e6 commit e742f86
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion thirdparty/vars.sh
Original file line number Diff line number Diff line change
@@ -137,7 +137,7 @@ CRCUTIL_VERSION=2903870057d2f1f109b245650be29e856dc8b646
CRCUTIL_NAME=crcutil-$CRCUTIL_VERSION
CRCUTIL_SOURCE=$TP_SOURCE_DIR/$CRCUTIL_NAME

LIBUNWIND_VERSION=1.6.2
LIBUNWIND_VERSION=1.7.2
LIBUNWIND_NAME=libunwind-$LIBUNWIND_VERSION
LIBUNWIND_SOURCE=$TP_SOURCE_DIR/$LIBUNWIND_NAME

3 comments on commit e742f86

@TannerFirl
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i still experience this issue with libunwind v1.7. did you do anything different, or did just upgrading fix your issue?

@acelyc111
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i still experience this issue with libunwind v1.7. did you do anything different, or did just upgrading fix your issue?

What issue you encountered, is there an issue track it? https://issues.apache.org/jira/projects/KUDU/issues/

@TannerFirl
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not referring to kudu, sorry. i meant I'm using libunwind v1.7 in my software and experience a segfault at the same place in the callstack (access_mem). Did solely upgrading to v1.7 libunwind fix your segfaults?

Please sign in to comment.