Support 26.04 amd64v3 and recover parameters from degraded DWARF#152
Open
xtrusia wants to merge 5 commits into
Open
Support 26.04 amd64v3 and recover parameters from degraded DWARF#152xtrusia wants to merge 5 commits into
xtrusia wants to merge 5 commits into
Conversation
Signed-off-by: Ponnuvel Palaniyappan <pponnuvel@gmail.com>
000c5f5 to
69e525c
Compare
Contributor
Author
|
checking error in local |
69e525c to
1cdcda7
Compare
A ceph version can ship as more than one binary (arch, the 26.04 amd64v3 variant, or a rebuild), each with different addresses. Pick the reference whose build-id matches the generated JSON instead of the first version-glob match, and fail when no checked-in reference matches the installed binary. Signed-off-by: Seyeong Kim <seyeong.kim@canonical.com>
26.04 ships ceph-osd as baseline amd64 and an amd64v3 variant. Add a job that runs dwarf-compare against each, forcing the variant through the apt config and asserting the resolved .deb, and check in the amd64v3 reference JSONs. Signed-off-by: Seyeong Kim <seyeong.kim@canonical.com>
95c2d14 to
f44f890
Compare
Contributor
Author
|
@taodd interesting, in amd64v3 ddeb, DW_AT_location is actually missing ReplicatedBackend::submit_transaction(...) |
b52ea22 to
29349e7
Compare
Some ceph-osd builds drop the low_pc and parameter locations of LTO-optimized functions, so they were skipped entirely. Recover the entry PC from the ELF symbol table and the parameter locations from the x86-64 SysV entry ABI, gated on exact type and layout checks. Signed-off-by: Seyeong Kim <seyeong.kim@canonical.com>
29349e7 to
2d1fac6
Compare
LTO builds drop low_pc and parameter DW_AT_location. Recover the entry PC from the ELF symbol table and derive each parameter's location from the x86_64 SysV convention: per-eightbyte classification of small aggregates, invisible reference for non-trivially-copyable types, and stack spill once the integer registers run out. Drop the function when a parameter cannot be resolved instead of asserting. Signed-off-by: Seyeong Kim <seyeong.kim@canonical.com>
2d1fac6 to
3ac860d
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Builds on pponnuvel's 26.04 support.