Bug 268761
| Summary: | elfutils 129 doesn't find zero sized symbols | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Andrew Cagney <cagney> |
| Component: | elfutils | Assignee: | Roland McGrath <roland> |
| Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | low | Docs Contact: | |
| Priority: | medium | ||
| Version: | rawhide | CC: | swagiaal |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | All | ||
| Whiteboard: | |||
| Fixed In Version: | 0.131-1.fc7 | Doc Type: | Bug Fix |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2007-11-13 00:13:28 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | |||
| Bug Blocks: | 173278 | ||
This report needs: exact raw assembly source, what machine to assemble it on, a test scenario using eu-addr2line -S with particular addresses, actual output seen, and expected output. This issue should be resolved by elfutils-0.130. If there is still a problem, reopen or file a new bug report with complete test case details. elfutils-0.130-3.fc7 has been pushed to the Fedora 7 testing repository. If problems still persist, please make note of it in this bug report. If you want to test the update, you can install it with su -c 'yum --enablerepo=updates-testing update elfutils' elfutils-0.131-1.fc7 has been pushed to the Fedora 7 stable repository. If problems still persist, please make note of it in this bug report. |
It is related to this: /* Keep track of the lowest address a relevant sizeless symbol could have. */ GElf_Addr min_label = addr; when there's no sized symbol containing addr preventing this: /* If we found no proper sized symbol to use, fall back to the best candidate sizeless symbol we found, if any. */ if (closest_name == NULL && sizeless_name != NULL && sizeless_sym.st_value >= min_label) from applying. my assembler looks like either: # A global symbol that has zero size. GLOBAL(global_st_size_0) LOAD_IMMED_BYTE (REG0, 0) STORE (REG0, REG0) <--------- addr is here NO_OP # A local symbol that has zero size. LOCAL(local_st_size_0) LOAD_IMMED_BYTE (REG0, 0) STORE (REG0, REG0) <--------- addr is here NO_OP a simple example though is _start.