[tip:perf/urgent] perf probe: Fix offset to allow signed value

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Commit-ID:  67c7ff7c56f38a8ab338fbbfe366621ce6303ba1
Gitweb:     http://git.kernel.org/tip/67c7ff7c56f38a8ab338fbbfe366621ce6303ba1
Author:     Masami Hiramatsu <mhiramat@xxxxxxxxxx>
AuthorDate: Mon, 15 Mar 2010 13:02:28 -0400
Committer:  Ingo Molnar <mingo@xxxxxxx>
CommitDate: Tue, 16 Mar 2010 10:02:18 +0100

perf probe: Fix offset to allow signed value

Fix dereference offset to intmax_t from uintmax_t, because
it can have negative values (for example local variable's offset
from frame pointer).

Signed-off-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
Cc: systemtap <systemtap@xxxxxxxxxxxxxxxxxx>
Cc: DLE <dle-develop@xxxxxxxxxxxxxxxxxxxxx>
LKML-Reference: <20100315170228.31852.71946.stgit@xxxxxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Ingo Molnar <mingo@xxxxxxx>
---
 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);
--
To unsubscribe from this list: send the line "unsubscribe linux-tip-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Stable Commits]     [Linux Stable Kernel]     [Linux Kernel]     [Linux USB Devel]     [Linux Video &Media]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux