Bug 510764
Summary: | Data dissapearing from print_backtrace on s390x between versions | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 5 | Reporter: | Petr Muller <pmuller> |
Component: | systemtap | Assignee: | Frank Ch. Eigler <fche> |
Status: | CLOSED WONTFIX | QA Contact: | BaseOS QE <qe-baseos-auto> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 5.6 | CC: | mjw, ohudlick |
Target Milestone: | rc | ||
Target Release: | --- | ||
Hardware: | s390x | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2010-07-12 19:54:50 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: |
Description
Petr Muller
2009-07-10 16:34:23 UTC
(In reply to comment #0) > On s390x, the testcase from bug 503225 showed a minor issue where a data > displayed by an old version of systemtap were not displayed by a new version, > which is actually a very minor regression. Do you happen to have the version number of that old version of systemtap (and preferably also the kernel version)? Sure. I've already given a kernel version :) - kernel-2.6.18-156.el5 Sorry for not giving the exact versions - I sometimes tend to suffer from the Curse of Knowledge in the RHEL world... The old version is RHEL5.3.z's systemtap, that means systemtap-0.7.2-3.el5_3 I cannot immediately find what could have changed here and don't have a s390x handy. The symbol lookup code did change somewhat since then, but for this case should be similar. The code that doesn't find the name is in runtime/sym.c: static void _stp_symbol_print(unsigned long address) { const char *modname; const char *name; unsigned long offset, size; name = _stp_kallsyms_lookup(address, &size, &offset, &modname, NULL, NULL); _stp_printf("%p", (int64_t) address); if (name) { if (modname && *modname) _stp_printf(" : %s+%#lx/%#lx [%s]", name, offset, size, modname); else _stp_printf(" : %s+%#lx/%#lx", name, offset, size); } } So _stp_kallsyms_lookup () failed for the given address. If the kernel version between the runs is the same I cannot really explain atm why that would be though. Sorry, we don't have a complete analysis/patch for this problem yet. Need to reassess to what extent the 1.0.9 code for rhel5.5 improves this; otherwise defer. We cannot promise fixing this one in time, but the general dwarf unwinders are looking very good in systemtap 1.3; porting s390 to them might be possible. Development Management has reviewed and declined this request. You may appeal this decision by reopening this request. |