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

feat(debuginfo): Add inlinee overlap checks. #718

Merged
merged 2 commits into from
Nov 28, 2022

Conversation

mstange
Copy link
Contributor

@mstange mstange commented Nov 25, 2022

This commit adds a few checks to the debuginfo_debug example: We now check that the lines from sibling inlinees don't overlap with each other.

This is another failure case which is currently happening in practice, namely in the breakpad reader, and it's confusing the symcache writer. I will fix the breakpad reader in a different PR.

Fixes getsentry#713.

In the FunctionBuilder, which is used for the DWARF reader and for the
breakpad reader, we were already splitting lines which were extending
beyond the end of an inlinee. Now we also split lines which extend into
the beginning of the next inlinee.

This fixes all "overlapping line" warnings in the debuginfo_debug
example when run on the macos/crash.dSYM. Those overlapping lines were
caused by "self lines" which overlapped with "inlinee lines".

I've also updated crash.inlines.sym with a file that I freshly generated
using a dump_syms build which includes this symbolic fix. Now the
crash.inlines.sym file no longer has overlapping inlinees.
This commit adds a few checks to the debuginfo_debug example: We now
check that the lines from sibling inlinees don't overlap with each other.

This is another failure case which is currently happening in practice,
namely in the breakpad reader, and it's confusing the symcache writer.
I will fix the breakpad reader in a different PR.
@mstange mstange requested a review from a team November 25, 2022 22:12
@codecov-commenter
Copy link

Codecov Report

Merging #718 (77e64ac) into master (b7131bd) will decrease coverage by 0.27%.
The diff coverage is 36.09%.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #718      +/-   ##
==========================================
- Coverage   72.35%   72.07%   -0.28%     
==========================================
  Files          93       93              
  Lines       18513    18621     +108     
==========================================
+ Hits        13395    13422      +27     
- Misses       5118     5199      +81     

@Swatinem Swatinem merged commit d30b18f into getsentry:master Nov 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants