| Summary: | +1 error in get_elf_symbol_info() when computing value of 'hi' address for ML_(find_rx_mapping)() | ||
|---|---|---|---|
| Product: | [Developer tools] valgrind | Reporter: | Ivo Raisr <ivosh> |
| Component: | general | Assignee: | Ivo Raisr <ivosh> |
| Status: | RESOLVED FIXED | ||
| Severity: | crash | CC: | ivosh |
| Priority: | NOR | ||
| Version First Reported In: | 3.13 SVN | ||
| Target Milestone: | --- | ||
| Platform: | Compiled Sources | ||
| OS: | Solaris | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: | proposed patch | ||
Created attachment 103726 [details]
proposed patch
Fixed in SVN r16216. |
Function ML_(find_rx_mapping)() expects 'lo' and 'hi' addresses. However get_elf_symbol_info() passes the following to it: ML_(find_rx_mapping)(di, (*sym_avmas_out).main, // lo (*sym_avmas_out).main + *sym_size_out); // hi Causing the debuginfo reader assert horribly when the last symbol ends precisely on the text segment end. I was able to reproduce this problem under special circumstances on sparcv9/Solaris platform, however it is generic. All other ML_(find_rx_mapping)() call sites account for 'lo'/'hi' argument semantics.