Messages in this thread Patch in this message | | | From | Masami Hiramatsu <> | Subject | [PATCH -tip 1/2] [BUGFIX] perf probe: Fix to make offset to signed value | Date | Mon, 15 Mar 2010 13:02:28 -0400 |
| |
Fix to make dereference offset intmax_t from uintmax_t, because it can be minus value (e.g. local variable's offset from frame pointer).
Signed-off-by: Masami Hiramatsu <mhiramat@redhat.com> Cc: Ingo Molnar <mingo@elte.hu> ---
tools/perf/util/probe-finder.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/perf/util/probe-finder.c b/tools/perf/util/probe-finder.c index f9cbbf1..0e8c8f1 100644 --- a/tools/perf/util/probe-finder.c +++ b/tools/perf/util/probe-finder.c @@ -333,8 +333,8 @@ static void show_location(Dwarf_Op *op, struct probe_finder *pf) die("%u exceeds max register number.", regn); if (deref) - ret = snprintf(pf->buf, pf->len, " %s=+%ju(%s)", - pf->var, (uintmax_t)offs, regs); + ret = snprintf(pf->buf, pf->len, " %s=%+jd(%s)", + pf->var, (intmax_t)offs, regs); else ret = snprintf(pf->buf, pf->len, " %s=%s", pf->var, regs); DIE_IF(ret < 0);
-- Masami Hiramatsu e-mail: mhiramat@redhat.com
| |