From patchwork Mon Jul 6 23:32:30 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Honnappa Nagarahalli X-Patchwork-Id: 234897 Delivered-To: patch@linaro.org Received: by 2002:a54:3249:0:0:0:0:0 with SMTP id g9csp548420ecs; Mon, 6 Jul 2020 16:32:49 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyfpIuvERpahPyC8jI4Z0fsdtukxx+21znt4VoSlpn+sZ4FxvBAgM+nY+7u0GrIjyrWIy/N X-Received: by 2002:a17:906:469a:: with SMTP id a26mr42816630ejr.198.1594078369652; Mon, 06 Jul 2020 16:32:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1594078369; cv=none; d=google.com; s=arc-20160816; b=nxElWM7rB6YjazIz2QuqN4GCNN58U06NBWkbmPDmKodjE0gNZxEEcmeDde0w1WcZOF UzRt6A7W2ode8tOJMsg8TNyvgXt6Vn4anakRCyBxwJzY12LUI5HaMFW/K2iRGoVQwZRj Lnp8aYaye/uBla6z5rPMQqjhtDzOMGdVkk4oOmJsmUMa7xCcYiqDNjhRD9eZ5gs/hE4R 7nDeUXKcJe7W7uF0rG0bSNKLsxIuzMc65todNaCPJSxKsK7kqqLJRYDJ41LL7p/Z468a ungmIDcx3O4+H6wLFstfdOa5wTtTlTFKsW4PcjD2h7vipqEylPaMJtEd8zQH2j8+bmW3 VUlw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:references:in-reply-to :message-id:date:cc:to:from; bh=92FeQQn7SpdROwsrda+RY3/EdZPIg2OoM7TGI8fiUTI=; b=oPWMX60c8gCYQUt6iXh4HZeOKfw4L5Y1Ag/xZkwVKu0Mvs1fjCqHQGY0+2kLEcQWS/ 9yAW6SzBAEy+FOMSOIWNN5jMIZU5HpMNLMa9EqfDzcIagSwFv5k0g9EsJcY69PmGjNsl pr1qmO2S6LBlWCFBnhFrpjBvNtJ1UDqoWumZvMmhYpi0P7VAZAQXEvfDEJ1Ew6nCks1O Jax6JZEPF72h1u1va+l/H7RXqS9tZfxBS5SGBNsL4/KkS8Vj9x1EWvD7UJmqWgFSMYBQ FqqDJqnWqKCB8A2adULM3MjAPeuLAn4oYGUuX+vMEUpf9sj4BgBkeu8KI5DbBZBtQ/h5 wb3w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of dev-bounces@dpdk.org designates 92.243.14.124 as permitted sender) smtp.mailfrom=dev-bounces@dpdk.org Return-Path: Received: from dpdk.org (dpdk.org. [92.243.14.124]) by mx.google.com with ESMTP id ds2si18515697ejc.114.2020.07.06.16.32.49; Mon, 06 Jul 2020 16:32:49 -0700 (PDT) Received-SPF: pass (google.com: domain of dev-bounces@dpdk.org designates 92.243.14.124 as permitted sender) client-ip=92.243.14.124; Authentication-Results: mx.google.com; spf=pass (google.com: domain of dev-bounces@dpdk.org designates 92.243.14.124 as permitted sender) smtp.mailfrom=dev-bounces@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id DA5F91DC7D; Tue, 7 Jul 2020 01:32:42 +0200 (CEST) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by dpdk.org (Postfix) with ESMTP id 5A02D1DC65; Tue, 7 Jul 2020 01:32:41 +0200 (CEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id AB1241045; Mon, 6 Jul 2020 16:32:40 -0700 (PDT) Received: from qc2400f-1.austin.arm.com (qc2400f-1.austin.arm.com [10.118.12.27]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id A0D0E3F718; Mon, 6 Jul 2020 16:32:40 -0700 (PDT) From: Honnappa Nagarahalli To: dev@dpdk.org, honnappa.nagarahalli@arm.com, alialnu@mellanox.com, orgerlitz@mellanox.com, wenzhuo.lu@intel.com, beilei.xing@intel.com, bernard.iremonger@intel.com, ferruh.yigit@intel.com Cc: hemant.agrawal@nxp.com, jerinj@marvell.com, viacheslavo@mellanox.com, thomas@monjalon.net, ruifeng.wang@arm.com, phil.yang@arm.com, nd@arm.com, stable@dpdk.org Date: Mon, 6 Jul 2020 18:32:30 -0500 Message-Id: <20200706233231.25881-2-honnappa.nagarahalli@arm.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200706233231.25881-1-honnappa.nagarahalli@arm.com> References: <20200617144307.9961-1-honnappa.nagarahalli@arm.com> <20200706233231.25881-1-honnappa.nagarahalli@arm.com> Subject: [dpdk-dev] [PATCH v3 2/3] app/testpmd: fix burst percentage calculation X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The burst % calculation can over flow due to multiplication. Fix the multiplication and increase the size of variables to 64b. Fixes: af75078fece3 ("first public release") Cc: stable@dpdk.org Signed-off-by: Honnappa Nagarahalli Reviewed-by: Phil Yang Reviewed-by: Ruifeng Wang Reviewed-by: Ferruh Yigit Tested-by: Phil Yang Tested-by: Ali Alnubani --- app/test-pmd/testpmd.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) -- 2.17.1 diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index 4989d22ca..2e1493da2 100644 --- a/app/test-pmd/testpmd.c +++ b/app/test-pmd/testpmd.c @@ -1692,9 +1692,9 @@ init_fwd_streams(void) static void pkt_burst_stats_display(const char *rx_tx, struct pkt_burst_stats *pbs) { - unsigned int total_burst; - unsigned int nb_burst; - unsigned int burst_stats[3]; + uint64_t total_burst; + uint64_t nb_burst; + uint64_t burst_stats[3]; uint16_t pktnb_stats[3]; uint16_t nb_pkt; int burst_percent[3]; @@ -1723,8 +1723,8 @@ pkt_burst_stats_display(const char *rx_tx, struct pkt_burst_stats *pbs) } if (total_burst == 0) return; - burst_percent[0] = (burst_stats[0] * 100) / total_burst; - printf(" %s-bursts : %u [%d%% of %d pkts", rx_tx, total_burst, + burst_percent[0] = (double)burst_stats[0] / total_burst * 100; + printf(" %s-bursts : %"PRIu64" [%d%% of %d pkts", rx_tx, total_burst, burst_percent[0], (int) pktnb_stats[0]); if (burst_stats[0] == total_burst) { printf("]\n"); @@ -1735,7 +1735,7 @@ pkt_burst_stats_display(const char *rx_tx, struct pkt_burst_stats *pbs) 100 - burst_percent[0], pktnb_stats[1]); return; } - burst_percent[1] = (burst_stats[1] * 100) / total_burst; + burst_percent[1] = (double)burst_stats[1] / total_burst * 100; burst_percent[2] = 100 - (burst_percent[0] + burst_percent[1]); if ((burst_percent[1] == 0) || (burst_percent[2] == 0)) { printf(" + %d%% of others]\n", 100 - burst_percent[0]);