lkml.org 
[lkml]   [2019]   [Oct]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH] tools lib traceevent: Fix sign variable to return signed in eval_type_str()
Hi Steve,

On Sat, Oct 19, 2019 at 6:07 AM Steven Rostedt <rostedt@goodmis.org> wrote:
>
>
> From: "Steven Rostedt (VMware)" <rostedt@goodmis.org>
>
> Seems that the value returned by eval_type_str() were always unsigned, and
> never signed extended. Luckily, looking at all the trace events that
> actually have a signed value seldom (if ever) are negative, so this bug
> never showed its face, and if it has, nobody noticed it.
>
> Converted the sign variable to boolean while at it.
>
> Link: http://lkml.kernel.org/r/20191013134903.5f879ad1@gandalf.local.home
> Fixes: f7d82350e597d ("tools/events: Add files to create libtraceevent.a")
> Reported-by: GwanYeong Kim <gy741.kim@gmail.com>
> Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>

Acked-by: Namhyung Kim <namhyung@kernel.org>

Thanks
Namhyung


> ---
> tools/lib/traceevent/event-parse.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tools/lib/traceevent/event-parse.c b/tools/lib/traceevent/event-parse.c
> index d948475585ce..2b20063813ac 100644
> --- a/tools/lib/traceevent/event-parse.c
> +++ b/tools/lib/traceevent/event-parse.c
> @@ -2217,7 +2217,7 @@ static char *arg_eval (struct tep_print_arg *arg);
> static unsigned long long
> eval_type_str(unsigned long long val, const char *type, int pointer)
> {
> - int sign = 0;
> + bool sign = true;
> char *ref;
> int len;
>
> @@ -2277,7 +2277,7 @@ eval_type_str(unsigned long long val, const char *type, int pointer)
> return (unsigned long long)(int)val & 0xffffffff;
>
> if (strncmp(type, "unsigned ", 9) == 0) {
> - sign = 0;
> + sign = false;
> type += 9;
> }
>
> --
> 2.20.1
>

\
 
 \ /
  Last update: 2019-10-21 17:10    [W:2.058 / U:0.016 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site