From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 39587A09EF; Wed, 23 Dec 2020 06:30:40 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 0DD33CA3C; Wed, 23 Dec 2020 06:30:39 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 32C98CA32; Wed, 23 Dec 2020 06:30:36 +0100 (CET) IronPort-SDR: ww0IEmqABWgpxSfG+ocdKhaTbodbZt8TRAlumY6ym6Oblvm8qjISUsm5Aj2v65S/zfJbjEF9Bg FQaaeFoqxyIA== X-IronPort-AV: E=McAfee;i="6000,8403,9843"; a="176111943" X-IronPort-AV: E=Sophos;i="5.78,441,1599548400"; d="scan'208";a="176111943" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Dec 2020 21:30:32 -0800 IronPort-SDR: gQYN2j/JY+jKvO5aEDDJmShjaG1SmhdFALC1vD5PzkXz7ykHVQQ5uBes1iu7BDIuK9jHvdO5GI aogXXopxMe2A== X-IronPort-AV: E=Sophos;i="5.78,441,1599548400"; d="scan'208";a="344825358" Received: from unknown (HELO localhost.localdomain) ([10.240.183.93]) by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Dec 2020 21:30:29 -0800 From: dapengx.yu@intel.com To: qiming.yang@intel.com, qi.z.zhang@intel.com Cc: dev@dpdk.org, YU DAPENG , stable@dpdk.org Date: Wed, 23 Dec 2020 13:30:18 +0800 Message-Id: <20201223053018.103877-1-dapengx.yu@intel.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH] net/ice: check Rx queue number on RSS init 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" From: YU DAPENG When RSS is initialized, rx queues number is used as denominator to set default value into the RSS lookup table. If it is zero, there will be error of being divided by 0. So add value check to avoid the error. Fixes: 50370662b727 ("net/ice: support device and queue ops") Cc: stable@dpdk.org Signed-off-by: YU DAPENG --- drivers/net/ice/ice_ethdev.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/net/ice/ice_ethdev.c b/drivers/net/ice/ice_ethdev.c index 9a5d6a559..bbb8c1460 100644 --- a/drivers/net/ice/ice_ethdev.c +++ b/drivers/net/ice/ice_ethdev.c @@ -3182,6 +3182,12 @@ static int ice_init_rss(struct ice_pf *pf) vsi->rss_key_size = ICE_AQC_GET_SET_RSS_KEY_DATA_RSS_KEY_SIZE; vsi->rss_lut_size = pf->hash_lut_size; + if (nb_q == 0) { + PMD_DRV_LOG(WARNING, + "RSS is not supported as rx queues number is zero\n"); + return 0; + } + if (is_safe_mode) { PMD_DRV_LOG(WARNING, "RSS is not supported in safe mode\n"); return 0; -- 2.27.0