From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jingjing Wu Subject: [PATCH v3 28/31] net/i40e/base: fix division by zero Date: Sat, 10 Dec 2016 19:24:50 +0800 Message-ID: <1481369093-102492-29-git-send-email-jingjing.wu@intel.com> References: <1481294364-83505-1-git-send-email-jingjing.wu@intel.com> <1481369093-102492-1-git-send-email-jingjing.wu@intel.com> Cc: jingjing.wu@intel.com, helin.zhang@intel.com, stable@dpdk.org To: dev@dpdk.org Return-path: In-Reply-To: <1481369093-102492-1-git-send-email-jingjing.wu@intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" For some cases when reading from device are incorrect or image is incorrect, this part of code causes crash due to division by zero. Fixes: 8db9e2a1b232 ("i40e: base driver") Signed-off-by: Jingjing Wu CC: stable@dpdk.org --- drivers/net/i40e/base/i40e_common.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/net/i40e/base/i40e_common.c b/drivers/net/i40e/base/i40e_common.c index 14aaac6..fdf9d9b 100644 --- a/drivers/net/i40e/base/i40e_common.c +++ b/drivers/net/i40e/base/i40e_common.c @@ -3967,8 +3967,10 @@ STATIC void i40e_parse_discover_capabilities(struct i40e_hw *hw, void *buff, /* partition id is 1-based, and functions are evenly spread * across the ports as partitions */ - hw->partition_id = (hw->pf_id / hw->num_ports) + 1; - hw->num_partitions = num_functions / hw->num_ports; + if (hw->num_ports != 0) { + hw->partition_id = (hw->pf_id / hw->num_ports) + 1; + hw->num_partitions = num_functions / hw->num_ports; + } /* additional HW specific goodies that might * someday be HW version specific -- 2.4.11