Fix crash in libunwind while interpreting debug info#60468
Fix crash in libunwind while interpreting debug info#60468alexey-milovidov merged 25 commits intomasterfrom
Conversation
|
This is an automated comment for commit 29f7a76 with description of existing statuses. It's updated for the latest CI running ❌ Click here to open a full report in a separate page
Successful checks
|
…e into libunwind-fix-crash
|
Looks like not all places are guarded: |
|
@azat, this is just a report from gdb about a signal. After this change, we allow the segmentation of fault signals at runtime when they are produced inside libunwind. |
|
FWIW this PR makes unwidning at least 2x faster (due to removing DetailsPreparationBelow I will mention ClickHouse/src/Common/QueryProfiler.cpp Line 155 in 6f74beb upstream
|
@alexey-milovidov Or we can simply rebase after #63865, and the problem with CI should be gone. |
|
Although maybe mincore (or any quirk for reading invalid addresses) will be still needed, if the original problem was due to wrong DWARF, but will see |
|
FYI this pull request is primarily for speed - because |
|
This commit breaks the Stateless tests! Sigsev has happen in libunwind, all the program stopped by gdb. Gdb collected the traces and after that program just continued to executing. But for the time while it has been paused, some tests got timeouts. |
…d update) * ClickHouse/ClickHouse#63865 from azat/fix-query-profiler-SIGSEGV Fix SIGSEGV due to CPU/Real profiler * ClickHouse/ClickHouse#60468 from ClickHouse/libunwind-fix-crash Fix crash in libunwind while interpreting debug info * ClickHouse/ClickHouse#65509 Update libunwind to 18.1.7 * ClickHouse/ClickHouse#66850 from ClickHouse/revert-libunwind-patch Revert libunwind patch * ClickHouse/ClickHouse#66977 from ClickHouse/uwo Apply libunwind fix * ClickHouse/ClickHouse#68312 from ClickHouse/muslwind Apply libunwind changes needed for musl * ClickHouse/ClickHouse#76107 from ClickHouse/owo Apply libunwind fix for DwarfFDECache * ClickHouse/ClickHouse#76136 from ClickHouse/revert-76107-owo Revert "Apply libunwind fix for DwarfFDECache" * ClickHouse/ClickHouse#76178 from ClickHouse/unw Apply libunwind fix for DwarfFDECache, attempt 2 * Update libunwind to aec8e58 * ClickHouse/ClickHouse#67152 from ClickHouse/ohno Uncomment accidentally commented out code in QueryProfiler * ClickHouse/ClickHouse#64058 aarch64 sigaltstack size fix * ClickHouse/ClickHouse#58607 Added null guards to avoid potential demangle crashes --------- Co-authored-by: Nikita Mikhaylov <[email protected]> Co-authored-by: Alexey Milovidov <[email protected]> Co-authored-by: Michael Kolupaev <[email protected]> Co-authored-by: Antonio Andelic <[email protected]> Co-authored-by: Max Kainov <[email protected]>
…d update) (#11324) * ClickHouse/ClickHouse#63865 from azat/fix-query-profiler-SIGSEGV Fix SIGSEGV due to CPU/Real profiler * ClickHouse/ClickHouse#60468 from ClickHouse/libunwind-fix-crash Fix crash in libunwind while interpreting debug info * ClickHouse/ClickHouse#65509 Update libunwind to 18.1.7 * ClickHouse/ClickHouse#66850 from ClickHouse/revert-libunwind-patch Revert libunwind patch * ClickHouse/ClickHouse#66977 from ClickHouse/uwo Apply libunwind fix * ClickHouse/ClickHouse#68312 from ClickHouse/muslwind Apply libunwind changes needed for musl * ClickHouse/ClickHouse#76107 from ClickHouse/owo Apply libunwind fix for DwarfFDECache * ClickHouse/ClickHouse#76136 from ClickHouse/revert-76107-owo Revert "Apply libunwind fix for DwarfFDECache" * ClickHouse/ClickHouse#76178 from ClickHouse/unw Apply libunwind fix for DwarfFDECache, attempt 2 * Update libunwind to aec8e58 * ClickHouse/ClickHouse#67152 from ClickHouse/ohno Uncomment accidentally commented out code in QueryProfiler * ClickHouse/ClickHouse#64058 aarch64 sigaltstack size fix * ClickHouse/ClickHouse#58607 Added null guards to avoid potential demangle crashes --------- Co-authored-by: Nikita Mikhaylov <[email protected]> Co-authored-by: Alexey Milovidov <[email protected]> Co-authored-by: Michael Kolupaev <[email protected]> Co-authored-by: Antonio Andelic <[email protected]> Co-authored-by: Max Kainov <[email protected]>
Changelog category (leave one):
Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):
Fix a crash in asynchronous stack unwinding (such as when using the sampling query profiler) while interpreting debug info. This closes #60460.
Interesting if this will help.