Received: by 10.223.176.5 with SMTP id f5csp3367128wra; Mon, 29 Jan 2018 12:13:54 -0800 (PST) X-Google-Smtp-Source: AH8x2266cxBMEM8vQKX1RZTpDThwo2Oh1lUiiXlQlSeYntip9Wd2hpd/Kcdty+HSvhnEwgVs9l9k X-Received: by 10.98.224.205 with SMTP id d74mr28394541pfm.56.1517256834541; Mon, 29 Jan 2018 12:13:54 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1517256834; cv=none; d=google.com; s=arc-20160816; b=ZCQr6UKXKgXrZMtGDHIIPxqay0CLKJKjhFY+Kwob4afm/peqLuhIwJNMA7vXARjm/j ieOiRKowxyhMHnvNR2kDhDDR0XRuy7fGvC689pQasH6MJwcB3SI8JNqN57qJVyU6ARMM N/DbYLOl7+o540VmgeVzvB0UoBwc/eQttb+mF5XvduKW+A1v/nuKvj+kFBUUo+ZDNksf 7Yir/pcIfwzZh9bGoUpPWY0wsSxcPfDHZUVoOCdI8DrlFVqY4hST3O+1EMzX0WuyAi88 k/V1SM+GH+UPcfZH6CJEsV98mlOlCFsm2QXv2EcsNDnUmqBN3Ddx4xv+MASUK8/QChGZ L/sg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=BCTNDZM9qgLeVyb6tM8CwaYV3NLYh7g998N9Btq+fYQ=; b=jACLbVU+Oi+8vmN/OksP8wbHPweKGgBEdo8gp32O6ItnDzTtC1+4NUzKWdIkaRMX3w Ccm9fwGPdwWNhSig6KOtb90GCEwT7hT94W8Zc/UC8CepxnSRzb3HFrAeX6BNiO2aGm7r rzVesgr5RZwIv0SOIJ6zy3Isy+ZsVGwPLplJK+O1+62fqIEiIbPfIasDD4RCp2yV8FP0 /5Io0tpkEy7ZHw99xfhGTo/RDRyBZG0CgFuTwWeePjqLYZQzITEXCdG71G1aTiZsG7/9 JNZXgDyiRZmc59EfTYispJxdUM5ufNgGOZq2VHCeu7sZtcbCQNgIeCGv6UXlNaw8j7Xx veJA== 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 o11si7954024pgn.796.2018.01.29.12.13.40; Mon, 29 Jan 2018 12:13:54 -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 S932117AbeA2UNP (ORCPT + 99 others); Mon, 29 Jan 2018 15:13:15 -0500 Received: from mail.linuxfoundation.org ([140.211.169.12]:36962 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753405AbeA2UNL (ORCPT ); Mon, 29 Jan 2018 15:13:11 -0500 Received: from localhost (LFbn-1-12258-90.w90-92.abo.wanadoo.fr [90.92.71.90]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id BE3D0301A; Mon, 29 Jan 2018 13:09:54 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Helmut Grauer , Talat Batheesh , Saeed Mahameed , "David S. Miller" Subject: [PATCH 4.14 51/71] net/mlx5e: Fix fixpoint divide exception in mlx5e_am_stats_compare Date: Mon, 29 Jan 2018 13:57:19 +0100 Message-Id: <20180129123830.835568233@linuxfoundation.org> X-Mailer: git-send-email 2.16.1 In-Reply-To: <20180129123827.271171825@linuxfoundation.org> References: <20180129123827.271171825@linuxfoundation.org> User-Agent: quilt/0.65 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Talat Batheesh [ Upstream commit e58edaa4863583b54409444f11b4f80dff0af1cd ] Helmut reported a bug about division by zero while running traffic and doing physical cable pull test. When the cable unplugged the ppms become zero, so when dividing the current ppms by the previous ppms in the next dim iteration there is division by zero. This patch prevent this division for both ppms and epms. Fixes: c3164d2fc48f ("net/mlx5e: Added BW check for DIM decision mechanism") Reported-by: Helmut Grauer Signed-off-by: Talat Batheesh Signed-off-by: Saeed Mahameed Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- drivers/net/ethernet/mellanox/mlx5/core/en_rx_am.c | 6 ++++++ 1 file changed, 6 insertions(+) --- a/drivers/net/ethernet/mellanox/mlx5/core/en_rx_am.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_rx_am.c @@ -197,9 +197,15 @@ static int mlx5e_am_stats_compare(struct return (curr->bpms > prev->bpms) ? MLX5E_AM_STATS_BETTER : MLX5E_AM_STATS_WORSE; + if (!prev->ppms) + return curr->ppms ? MLX5E_AM_STATS_BETTER : + MLX5E_AM_STATS_SAME; + if (IS_SIGNIFICANT_DIFF(curr->ppms, prev->ppms)) return (curr->ppms > prev->ppms) ? MLX5E_AM_STATS_BETTER : MLX5E_AM_STATS_WORSE; + if (!prev->epms) + return MLX5E_AM_STATS_SAME; if (IS_SIGNIFICANT_DIFF(curr->epms, prev->epms)) return (curr->epms < prev->epms) ? MLX5E_AM_STATS_BETTER :