Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp3298026yba; Tue, 16 Apr 2019 08:33:06 -0700 (PDT) X-Google-Smtp-Source: APXvYqyioO1EzvV5olJtZTcyo0C4tvbOGB032EUETMwSSXKW9ApYdlzHHZNq4CwLPyLgDXvQ/oBR X-Received: by 2002:aa7:8c42:: with SMTP id e2mr82633965pfd.24.1555428786271; Tue, 16 Apr 2019 08:33:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1555428786; cv=none; d=google.com; s=arc-20160816; b=QhQD8Pk6kYvvQ0P8zCjza1u3phqkx6BrwtdCjEquPQZsh8um/rmgf0b+JhkaC4QNpQ /RGgez86Wd/XUIhXZc3QP5N5YN7Z+2ZnXxz5vanWA18YXkVMVoS/h/jApKFuX6myP9YU S7hfWvI7Hp195TDfQPc85Ops4wFpv3ua7Hh7U8kfiCYneNwMfS8vLRsOKn3BCkc1AyCU Qm4sXlopJBMzs68thC6ABUyz3mWGflLAtc6yhAzV0zuzsfDUTiJHrUsB3HUGxF1Em3Td eWc+/yGf6xHVK76Dvbv8tjy9qTZXcXOETCbi7aHf1Pz3NBYNn5Qhs0/l86AJTzmsbti5 hObQ== 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=Urw1cCee4xa/nYu6SeGFNyLTdFbsDXd778b6REIRTYQ=; b=0ocAg4tA1lf3OaAdyHRyP9xdxut/rGLoyWoUZrMKPKn8p7QvmKRgKmrCqw5XumGcD1 sqDqCTmVlbwDqIDrgGzsDsx1M3BBCeYqba4+WBbvL56dib6pGl5Msi6mb+57Gvp2nwPC nSVP1v0GF4fTfQMR37FH44uAnkGotYyQiNgN/uFSa1TkzOZRQ6grFUTmAKgX8i7ndpIs yHVLU5tZYM3+iqrRc1AWsVm5p28E0gLSudg/IBNIOkIoTqf1ysmAPJF5wYrm+A6O5lIm hne17n2eExvR66EpJnleKfaVcSAT1XlSJufoREblz4ZPCiT/j77C7kuliXmhlLfgdVPi rT2Q== 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 n80si12770151pfb.169.2019.04.16.08.32.50; Tue, 16 Apr 2019 08:33:06 -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 S1729226AbfDPPaz (ORCPT + 99 others); Tue, 16 Apr 2019 11:30:55 -0400 Received: from terminus.zytor.com ([198.137.202.136]:41393 "EHLO terminus.zytor.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726645AbfDPPay (ORCPT ); Tue, 16 Apr 2019 11:30:54 -0400 Received: from terminus.zytor.com (localhost [127.0.0.1]) by terminus.zytor.com (8.15.2/8.15.2) with ESMTPS id x3GFU8lj3494874 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Tue, 16 Apr 2019 08:30:08 -0700 Received: (from tipbot@localhost) by terminus.zytor.com (8.15.2/8.15.2/Submit) id x3GFU8rS3494822; Tue, 16 Apr 2019 08:30:08 -0700 Date: Tue, 16 Apr 2019 08:30:08 -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: linux-kernel@vger.kernel.org, rostedt@goodmis.org, hpa@zytor.com, rikard.falkeborn@gmail.com, mingo@kernel.org, acme@redhat.com, tglx@linutronix.de, tstoyanov@vmware.com Reply-To: tstoyanov@vmware.com, tglx@linutronix.de, acme@redhat.com, mingo@kernel.org, rikard.falkeborn@gmail.com, hpa@zytor.com, linux-kernel@vger.kernel.org, rostedt@goodmis.org 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: f32c2877bcb068a718bb70094cd59ccc29d4d082 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=1.1 required=5.0 tests=ALL_TRUSTED,BAYES_00, DATE_IN_FUTURE_06_12,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: f32c2877bcb068a718bb70094cd59ccc29d4d082 Gitweb: https://git.kernel.org/tip/f32c2877bcb068a718bb70094cd59ccc29d4d082 Author: Rikard Falkeborn AuthorDate: Tue, 9 Apr 2019 11:15:29 +0200 Committer: Arnaldo Carvalho de Melo CommitDate: Tue, 16 Apr 2019 11:27:36 -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)