Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp598824yba; Fri, 12 Apr 2019 09:42:24 -0700 (PDT) X-Google-Smtp-Source: APXvYqzh6zaCMZnmJNH0j2evamLjdYxQqYammv3IBq9aWtfgtp8LBpZrVsyZOTB0Dyf0cMk4PHXs X-Received: by 2002:aa7:9089:: with SMTP id i9mr58810165pfa.115.1555087344774; Fri, 12 Apr 2019 09:42:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1555087344; cv=none; d=google.com; s=arc-20160816; b=riMwL+OwCDAgzZDn2eBC1qXBs0/2qkKPrsN9QfodIXKD4N8iXz3zWYLPTA9L86aMGI Ev+ao09hnwrTXqxWuO/4Y9kKd4fxZus6OZ8MYkC55PRA1jHiwByIaIHqo3Xcmv0i0ttg +v6hR9uChMst2j3TVkRT0tN3CA6t1cGE7LCruUL5Wy6j6o+g6qzYBEJ9qzUa+Hs0qkVu RqBdAW2iJrfvx4nqIqdN6btNbBJzqhzJq2OlyrPrHAR1/A5Zr4N5Tbnqz0TOBD1jz4CA WXcmLNLnBnoY53fnZNPPTz4goST3VhMUsK0kGW0U8q5h00QFlHOJh/5gGGkQNUcXThQd SZfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-disposition :content-transfer-encoding:mime-version:robot-unsubscribe:robot-id :git-commit-id:subject:to:references:in-reply-to:reply-to:cc :message-id:from:date; bh=PeQWxMqRfgwzNYeyQ7gnxqZJdiLVxD+FlgH47Rxh7cg=; b=J5Y8h8jx+BFyYNiLqdUAiKgshj82d7CMauvskmnDU7M4L/vnk9QOf84zWz4uHvll/u HcAsjhokKfQ9jodNTh5UetNs1BtgyQT5d+OWxjQS002WSDR6HJxagX5YvlUr2Hg6GJv2 470Wwgq6jKJpm2bSrgwO4y0EU/SXFbdslL9daU96591qXPsD//ILGbi4X5ZAxTQRKY52 fIcuKWNlJd6nU2GrqZqExAsx9vLXBfFHNu1zIb2DmUSZg3eYNyAAfga/c63sHGHLet3N BPd/ZQ7i7mHfFkFsYRV6fZyP55v9klXJPZEzkCi9K50CCc7EJV5NqGX70rtS1CO7wlgF K9WA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a22si38092822pfc.217.2019.04.12.09.42.08; Fri, 12 Apr 2019 09:42:24 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726872AbfDLQkR (ORCPT + 99 others); Fri, 12 Apr 2019 12:40:17 -0400 Received: from terminus.zytor.com ([198.137.202.136]:58311 "EHLO terminus.zytor.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726765AbfDLQkQ (ORCPT ); Fri, 12 Apr 2019 12:40:16 -0400 Received: from terminus.zytor.com (localhost [127.0.0.1]) by terminus.zytor.com (8.15.2/8.15.2) with ESMTPS id x3CGdgKS1753239 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Fri, 12 Apr 2019 09:39:42 -0700 Received: (from tipbot@localhost) by terminus.zytor.com (8.15.2/8.15.2/Submit) id x3CGdfqr1753236; Fri, 12 Apr 2019 09:39:41 -0700 Date: Fri, 12 Apr 2019 09:39:41 -0700 X-Authentication-Warning: terminus.zytor.com: tipbot set sender to tipbot@zytor.com using -f From: tip-bot for Rikard Falkeborn Message-ID: Cc: rostedt@goodmis.org, tglx@linutronix.de, linux-kernel@vger.kernel.org, acme@redhat.com, mingo@kernel.org, tstoyanov@vmware.com, rikard.falkeborn@gmail.com, hpa@zytor.com Reply-To: tstoyanov@vmware.com, rostedt@goodmis.org, mingo@kernel.org, acme@redhat.com, linux-kernel@vger.kernel.org, hpa@zytor.com, tglx@linutronix.de, rikard.falkeborn@gmail.com In-Reply-To: <20190409091529.2686-1-rikard.falkeborn@gmail.com> References: <20190409091529.2686-1-rikard.falkeborn@gmail.com> To: linux-tip-commits@vger.kernel.org Subject: [tip:perf/urgent] tools lib traceevent: Fix missing equality check for strcmp Git-Commit-ID: ff4f5471801f879aea8f9e3ace2b9af31efc9178 X-Mailer: tip-git-log-daemon Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline X-Spam-Status: No, score=2.2 required=5.0 tests=ALL_TRUSTED,BAYES_00, DATE_IN_FUTURE_03_06,FREEMAIL_FORGED_REPLYTO autolearn=no autolearn_force=no version=3.4.2 X-Spam-Level: ** X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on terminus.zytor.com Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Commit-ID: ff4f5471801f879aea8f9e3ace2b9af31efc9178 Gitweb: https://git.kernel.org/tip/ff4f5471801f879aea8f9e3ace2b9af31efc9178 Author: Rikard Falkeborn AuthorDate: Tue, 9 Apr 2019 11:15:29 +0200 Committer: Arnaldo Carvalho de Melo CommitDate: Tue, 9 Apr 2019 11:55:30 -0300 tools lib traceevent: Fix missing equality check for strcmp There was a missing comparison with 0 when checking if type is "s64" or "u64". Therefore, the body of the if-statement was entered if "type" was "u64" or not "s64", which made the first strcmp() redundant since if type is "u64", it's not "s64". If type is "s64", the body of the if-statement is not entered but since the remainder of the function consists of if-statements which will not be entered if type is "s64", we will just return "val", which is correct, albeit at the cost of a few more calls to strcmp(), i.e., it will behave just as if the if-statement was entered. If type is neither "s64" or "u64", the body of the if-statement will be entered incorrectly and "val" returned. This means that any type that is checked after "s64" and "u64" is handled the same way as "s64" and "u64", i.e., the limiting of "val" to fit in for example "s8" is never reached. This was introduced in the kernel tree when the sources were copied from trace-cmd in commit f7d82350e597 ("tools/events: Add files to create libtraceevent.a"), and in the trace-cmd repo in 1cdbae6035cei ("Implement typecasting in parser") when the function was introduced, i.e., it has always behaved the wrong way. Detected by cppcheck. Signed-off-by: Rikard Falkeborn Reviewed-by: Steven Rostedt (VMware) Cc: Tzvetomir Stoyanov Fixes: f7d82350e597 ("tools/events: Add files to create libtraceevent.a") Link: http://lkml.kernel.org/r/20190409091529.2686-1-rikard.falkeborn@gmail.com Signed-off-by: Arnaldo Carvalho de Melo --- tools/lib/traceevent/event-parse.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/lib/traceevent/event-parse.c b/tools/lib/traceevent/event-parse.c index 87494c7c619d..981c6ce2da2c 100644 --- a/tools/lib/traceevent/event-parse.c +++ b/tools/lib/traceevent/event-parse.c @@ -2233,7 +2233,7 @@ eval_type_str(unsigned long long val, const char *type, int pointer) return val & 0xffffffff; if (strcmp(type, "u64") == 0 || - strcmp(type, "s64")) + strcmp(type, "s64") == 0) return val; if (strcmp(type, "s8") == 0)