Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update libunwind to v1.5.0 #42782

Merged
merged 1 commit into from
Jan 27, 2022
Merged

Update libunwind to v1.5.0 #42782

merged 1 commit into from
Jan 27, 2022

Conversation

ararslan
Copy link
Member

We were a few versions behind (previously 1.3.2). I've updated our patches accordingly with the upstream PRs for these changes against libunwind master. Also note that this is nongnu libunwind, not LLVM libunwind, so this only affects Linux and FreeBSD.

@ararslan ararslan added the external dependencies Involves LLVM, OpenBLAS, or other linked libraries label Oct 24, 2021
@ararslan
Copy link
Member Author

CI failures:

@ararslan

This comment has been minimized.

@DilumAluthge
Copy link
Member

@ararslan Can you rebase this on the latest master?

Also, it looks like you'll need to fix some merge conflicts.

deps/unwind.mk Outdated Show resolved Hide resolved
Copy link
Member

@vtjnash vtjnash left a comment

Choose a reason for hiding this comment

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

Missing update to stdlib/LibUnwind_jll/Project.toml file version

deps/unwind.mk Outdated Show resolved Hide resolved
@vtjnash
Copy link
Member

vtjnash commented Nov 8, 2021

Relevant PRs:
JuliaPackaging/Yggdrasil#3804
JuliaPackaging/Yggdrasil#3856
JuliaPackaging/Yggdrasil#3859

Changes log:
libunwind/libunwind@v1.3.2...v1.5

@ararslan ararslan requested a review from vtjnash November 9, 2021 05:19
@ararslan
Copy link
Member Author

ararslan commented Nov 9, 2021

Weird failures on buildkite. Rebased on master, hopefully that fixes them.

@ararslan ararslan force-pushed the aa/libunwind-1.5.0 branch 2 times, most recently from 922592b to e2e4d26 Compare November 13, 2021 18:20
@giordano
Copy link
Contributor

giordano commented Nov 26, 2021

There is v1.6.0 now (changelog: libunwind/libunwind@v1.5.0...v1.6.0), you may want to try that one?

@mkitti
Copy link
Contributor

mkitti commented Nov 29, 2021

xref: ESMValGroup/ESMValTool#2433 (libunwind 1.6 appears to breaking ABI compat with Julia built against prior versions via conda-forge)

@vtjnash
Copy link
Member

vtjnash commented Nov 29, 2021

libunwind declares itself to be ABI-compatible with SONUMBER 8 for both, so you need to open an issue with them

$ objdump -x usr/lib/libunwind.so  | grep SONAME
  SONAME               libunwind.so.8

@vtjnash
Copy link
Member

vtjnash commented Nov 29, 2021

@ararslan
Copy link
Member Author

There is v1.6.0 now ([...]), you may want to try that one?

Probably not given libunwind/libunwind#295 (comment) though I guess that PR could be added as a patch.

All of the fixes and upstreaming PRs I've submitted to libunwind have been merged to master (though none are on 1.6-stable) so we should be able to drop a bunch of patches come libunwind 1.7.

@ararslan
Copy link
Member Author

And now there's a 1.6.1 😄

@nalimilan
Copy link
Member

Any news on this? FWIW I get a build failure on Fedora 36 when using libunwind 1.6.

nongnu libunwind, not LLVM libunwind, so this only affects Linux and
FreeBSD
@ararslan
Copy link
Member Author

Any news on this?

It is news to me that anyone remembered or cared about this PR. 😄

FWIW I get a build failure on Fedora 36 when using libunwind 1.6.

Good to know. It seems that 1.5 works okay across the board so I'll leave it there and we can revisit other versions at some point.

I've rebased this branch on master and removed the tag version kludge as it's no longer necessary (upstream added a v1.5.0 alongside v1.5).

@DilumAluthge
Copy link
Member

The upstream is releasing new versions faster than Alex can update this PR 😂

@DilumAluthge
Copy link
Member

What's the plan for getting this PR merged?

@ararslan
Copy link
Member Author

What's the plan for getting this PR merged?

@vtjnash approved back in November, so assuming CI passes with the rebase and Jameson is still on board then it should be good to merge I think.

@ararslan
Copy link
Member Author

CI failures:

  • Linux x64 multithreaded: unrelated Distributed failure
    Test Failed at /cache/build/dockerized-amdci4-8/julialang/julia-master/julia-f2d3dce18c/share/julia/stdlib/v1.8/Distributed/test/distributed_exec.jl:301
      Expression: remotecall_fetch((k->begin
                    haskey(Distributed.PGRP.refs, k)
                end), wid1, rrid) == false
       Evaluated: true == false
    ERROR: LoadError: There was an error during testing
    in expression starting at /cache/build/dockerized-amdci4-8/julialang/julia-master/julia-f2d3dce18c/share/julia/stdlib/v1.8/Distributed/test/distributed_exec.jl:284
    
  • Doctests: unrelated OOM on the Nanosoldier machine

@DilumAluthge
Copy link
Member

CI is all green now. @vtjnash Are you good with merging this?

@vtjnash vtjnash merged commit ef35804 into master Jan 27, 2022
@vtjnash vtjnash deleted the aa/libunwind-1.5.0 branch January 27, 2022 16:29
@nalimilan
Copy link
Member

Thanks @ararslan! I you feel like upgrading to 1.6 now... :-p

@mkitti
Copy link
Contributor

mkitti commented Jan 28, 2022

Note the ABI breakage when moving to 1.6:
https://abi-laboratory.pro/index.php?view=compat_report&l=libunwind&v1=1.5.0&v2=1.6.0&obj=8ee57&kind=abi

Field load_offset has been added at the middle position of [unw_dyn_info]

LilithHafner pushed a commit to LilithHafner/julia that referenced this pull request Feb 22, 2022
This updates the nongnu libunwind, not LLVM libunwind, so this only
affects Linux and FreeBSD.
LilithHafner pushed a commit to LilithHafner/julia that referenced this pull request Mar 8, 2022
This updates the nongnu libunwind, not LLVM libunwind, so this only
affects Linux and FreeBSD.
inkydragon added a commit to inkydragon/julia that referenced this pull request Jun 18, 2022
vtjnash pushed a commit that referenced this pull request Jun 28, 2022
* deps: include `$(LibName).version`
* deps: rm `Versions.make`
* repo: update `julia.spdx.json`
* deps: split `unwind.version`, add new `llvmunwind.version`
* deps: split `llvm.version` into `clang.version` + `llvm-tools.version`
* stdlib: Add new makefile `all_jlls.version` to include all `_jll` names
* deps/LibUnwind_jll: fix version mismatch (`Project.toml` and `checksum`), xref: #42782
pcjentsch pushed a commit to pcjentsch/julia that referenced this pull request Aug 18, 2022
…ang#45720)

* deps: include `$(LibName).version`
* deps: rm `Versions.make`
* repo: update `julia.spdx.json`
* deps: split `unwind.version`, add new `llvmunwind.version`
* deps: split `llvm.version` into `clang.version` + `llvm-tools.version`
* stdlib: Add new makefile `all_jlls.version` to include all `_jll` names
* deps/LibUnwind_jll: fix version mismatch (`Project.toml` and `checksum`), xref: JuliaLang#42782
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
external dependencies Involves LLVM, OpenBLAS, or other linked libraries
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants