Received: by 2002:ac0:8845:0:0:0:0:0 with SMTP id g63csp109896img; Wed, 27 Feb 2019 17:56:33 -0800 (PST) X-Google-Smtp-Source: AHgI3IZ2G+5fxMK/ZoN2uIj0PGHu+Rh9XmPMamTOyrxAE1tcffy74/tM3OissIDgEWclknjxcsi9 X-Received: by 2002:a63:d04f:: with SMTP id s15mr6031155pgi.80.1551318993691; Wed, 27 Feb 2019 17:56:33 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1551318993; cv=none; d=google.com; s=arc-20160816; b=cGG1CKB6qgfhaBpvB1xTPAb8TN1Myf3CTdmY1k2pXrDP7OpXKwv3LGQQFnZXoeJ3WB GVOLr49o1JycwqAHpF5vWKCbrDxl+EWxNWhZ3ICdBlXhS4waiUq79d+k3hfzAdi+gPqL 3OJPaBuClsuV6d0rab4CuD+6VGuIWj+zA+QGSw/zujjZ3XuGywqSIm1IAjGXgibC0ZQb ta0ZcATSWEw6dBPGVP/5tP815qyWURFDR54Xeup5segOf5HeL2zIAd3i7slMxtP+9HUs FW3Grlj9tHhTrqEteWvH5arFyYKfMknUW7GGb5wwyPrjVfEOLZtHsgCAzJnlPEFaFHCO Mx+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=b9Kk0x/nRF4BeCYg28z08rYzugDX0nf3QEV7dQ0tYBo=; b=pzIAg0LDr+8++57ZIE/OviFnnO/s/8gWhYSlmxB6LxoLkxsG+bpy1alCwpw62MMMuw SozgI6a6fsXKmxtlJoj9VIP54bdOiD8qg2/AaJXTUEIn7wYPHlWzDiAMVIF1dATNZqig trqRF7ahE/uusyb4jj2qCD+uHe0jO/6B230h5UfxacZdyLls1MiBu7IfDgZ4QuF63ETe n/c1tO7ukzU1H1pi2+eB5TEbPGT+nrwmWBZ5galUYLBehq01dodadk7fodRDmv8AM5Jm hyuAZv6MgSmQDgFRDublRvPwbkCTktYJ69wMlnZTpWsZcnsgUdFkwBlcTU71GCAwBggT cAvg== 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 y1si8793452pll.214.2019.02.27.17.56.18; Wed, 27 Feb 2019 17:56:33 -0800 (PST) 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 S1730650AbfB1Bzs (ORCPT + 99 others); Wed, 27 Feb 2019 20:55:48 -0500 Received: from mx2.suse.de ([195.135.220.15]:55712 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1730240AbfB1Bzs (ORCPT ); Wed, 27 Feb 2019 20:55:48 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id BAFEBAFCE; Thu, 28 Feb 2019 01:55:46 +0000 (UTC) From: Tony Jones To: linux-kernel@vger.kernel.org Cc: Tony Jones , Arnaldo Carvalho de Melo , linux-perf-users@vger.kernel.org, Steven Rostedt Subject: [PATCH] tools lib traceevent: Fix buffer overflow in arg_eval Date: Wed, 27 Feb 2019 17:55:32 -0800 Message-Id: <20190228015532.8941-1-tonyj@suse.de> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Fix buffer overflow observed when running perf test. The overflow is when trying to evaluate "1ULL << (64 - 1)" which is resulting in -9223372036854775808 which overflows the 20 character buffer. If is possible this bug has been reported before but I still don't see any fix checked in: See: https://www.spinics.net/lists/linux-perf-users/msg07714.html Cc: Arnaldo Carvalho de Melo Cc: linux-perf-users@vger.kernel.org Cc: Steven Rostedt Signed-off-by: Tony Jones --- 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 abd4fa5d3088..87494c7c619d 100644 --- a/tools/lib/traceevent/event-parse.c +++ b/tools/lib/traceevent/event-parse.c @@ -2457,7 +2457,7 @@ static int arg_num_eval(struct tep_print_arg *arg, long long *val) static char *arg_eval (struct tep_print_arg *arg) { long long val; - static char buf[20]; + static char buf[24]; switch (arg->type) { case TEP_PRINT_ATOM: -- 2.20.1