Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix unwind on ARM64 Linux (dotnet#20345)
The libunwind cannot unwind from `__libc_start_main` to `_start` on Linux ARM64 with glibc <= 2.27, because the `__libc_start_main` is missing unwind info. While we already have a way to detect such case when the same issue happens for `_start`, we were triggering it only in case unw_step returned 0. For this case, it returns 1 though, which is also a valid success indicator. The result is that .NET core starts spinning infinitely in case an unhandled exception happens on ARM64. The fix is to update the check to test for the return value being >= 0.
- Loading branch information