From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 4CE37A0547 for ; Tue, 9 Feb 2021 11:36:25 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4737A40147; Tue, 9 Feb 2021 11:36:25 +0100 (CET) Received: from mail-wr1-f54.google.com (mail-wr1-f54.google.com [209.85.221.54]) by mails.dpdk.org (Postfix) with ESMTP id 2959740147 for ; Tue, 9 Feb 2021 11:36:24 +0100 (CET) Received: by mail-wr1-f54.google.com with SMTP id z6so20923538wrq.10 for ; Tue, 09 Feb 2021 02:36:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=2diMH5LU4MC6chU9iXQqcM5LLXuPB08MlNQISWtdGmU=; b=nromL8nXKSYJiM53A1IdHPg4NwR0AXFdT+NktZntSFmvhq0IKXrpwwjaZo9xls594G cpUMJ2pLXhWSCfonjlej1+1v3Sb/AfwYxt8CroWmLRJ78gh2yPJWa26FIvGxoYNm9M6P P+XaQOetlY8GZySeiFtUXwwTb9DVucpClCN/aGedKwXtzNchVDmfGXfEqdHS37NP99Vz PA40TkwOPT2fFzoi3gV593JRKiK5Birdz0OhEWRfYMwt3qe5WdxGvUPUcusyOgDZBUI9 DXZML8LhWennvdtIk6ZmeJho1L0hhioQrOgznMP0QQ8ivbjcF0Ty5QS1aYoUwlSDu2k4 b2gg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=2diMH5LU4MC6chU9iXQqcM5LLXuPB08MlNQISWtdGmU=; b=H/gYqizheL4AE2298aTGUtekz7ZJdgOWZSkIkU+mzCXt9j1GL4zCfLDK0axnD6NDnd 85dyzUMvzr94D4PYYlcIJ3yGaqmKm0VuAjr32llATq6tC/3Rb2VVERKZZEK2fPqOCfU1 yAof2Q5VhFWNAFdqbLcrKmNhzjiKsIP3KmFBKR7pOgI9HK9IOZHFiKjm66Z6g9uuko17 0momNkZckmOvbo5nPfVupLmbBz6orEwNuQ53sm9ft1xByX89B/DPwT7zCMfTJ6SmrrNy CCsmyTEmHno74B9qDeRlBZviiakauQeQLX8iWty0tAaqv2zoQeQBWlzNxe7mVmEyuaK8 gYAw== X-Gm-Message-State: AOAM533AUVzrowCWEkJHH2V/Ap/AgVE4TvUbFV5JTCAJXLJ+ko3eArAt CR17vfc/2pY2icQbp/GGf+ljJBC3Pao9RQ== X-Google-Smtp-Source: ABdhPJwXu7PAa/rGRqdaAh0cyy06DjaNJDAu1IopJU1JoJZinYR++4FLL9M5CytIQLWAI9ZjM1xU8g== X-Received: by 2002:a5d:540d:: with SMTP id g13mr11257751wrv.143.1612866983913; Tue, 09 Feb 2021 02:36:23 -0800 (PST) Received: from localhost ([88.98.246.218]) by smtp.gmail.com with ESMTPSA id j15sm35675438wrw.9.2021.02.09.02.36.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 09 Feb 2021 02:36:23 -0800 (PST) From: luca.boccassi@gmail.com To: Lijun Ou Cc: dpdk stable Date: Tue, 9 Feb 2021 10:35:14 +0000 Message-Id: <20210209103529.466775-16-luca.boccassi@gmail.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210209103529.466775-1-luca.boccassi@gmail.com> References: <20210205111920.1272063-1-luca.boccassi@gmail.com> <20210209103529.466775-1-luca.boccassi@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-stable] patch 'net/hns3: fix RSS indirection table size' has been queued to stable release 20.11.1 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" Hi, FYI, your patch has been queued to stable release 20.11.1 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 02/11/21. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/bluca/dpdk-stable This queued commit can be viewed at: https://github.com/bluca/dpdk-stable/commit/aabbdedad2c26235f9d2a9ca443adcf90e5f769c Thanks. Luca Boccassi --- >From aabbdedad2c26235f9d2a9ca443adcf90e5f769c Mon Sep 17 00:00:00 2001 From: Lijun Ou Date: Wed, 3 Feb 2021 20:23:49 +0800 Subject: [PATCH] net/hns3: fix RSS indirection table size [ upstream commit 0fce2c46dc16294dd193dd5bb84506e4570566b1 ] The driver should not use the fixed value as the validity check of RSS indirection table size with HW supported. As a result, it will cause misjudgment when the RSS RETA size with HW supported have changed. Fixes: c37ca66f2b27 ("net/hns3: support RSS") Signed-off-by: Lijun Ou --- drivers/net/hns3/hns3_cmd.c | 11 +++++++++++ drivers/net/hns3/hns3_cmd.h | 7 ++++++- drivers/net/hns3/hns3_dcb.c | 2 +- drivers/net/hns3/hns3_ethdev.c | 18 ++++++++++++++++-- drivers/net/hns3/hns3_ethdev_vf.c | 18 ++++++++++++++++-- drivers/net/hns3/hns3_flow.c | 6 +++--- drivers/net/hns3/hns3_rss.c | 28 ++++++++++++++-------------- drivers/net/hns3/hns3_rss.h | 5 ++--- 8 files changed, 69 insertions(+), 26 deletions(-) diff --git a/drivers/net/hns3/hns3_cmd.c b/drivers/net/hns3/hns3_cmd.c index f58f4f7adc..cd14b1b69d 100644 --- a/drivers/net/hns3/hns3_cmd.c +++ b/drivers/net/hns3/hns3_cmd.c @@ -432,6 +432,16 @@ static void hns3_parse_capability(struct hns3_hw *hw, hns3_set_bit(hw->capability, HNS3_DEV_SUPPORT_STASH_B, 1); } +static uint32_t +hns3_build_api_caps(void) +{ + uint32_t api_caps = 0; + + hns3_set_bit(api_caps, HNS3_API_CAP_FLEX_RSS_TBL_B, 1); + + return rte_cpu_to_le_32(api_caps); +} + static enum hns3_cmd_status hns3_cmd_query_firmware_version_and_capability(struct hns3_hw *hw) { @@ -441,6 +451,7 @@ hns3_cmd_query_firmware_version_and_capability(struct hns3_hw *hw) hns3_cmd_setup_basic_desc(&desc, HNS3_OPC_QUERY_FW_VER, 1); resp = (struct hns3_query_version_cmd *)desc.data; + resp->api_caps = hns3_build_api_caps(); /* Initialize the cmd function */ ret = hns3_cmd_send(hw, &desc, 1); diff --git a/drivers/net/hns3/hns3_cmd.h b/drivers/net/hns3/hns3_cmd.h index 761735da87..f7ab1f4ca3 100644 --- a/drivers/net/hns3/hns3_cmd.h +++ b/drivers/net/hns3/hns3_cmd.h @@ -294,11 +294,16 @@ enum HNS3_CAPS_BITS { HNS3_CAPS_HW_PAD_B, HNS3_CAPS_STASH_B, }; + +enum HNS3_API_CAP_BITS { + HNS3_API_CAP_FLEX_RSS_TBL_B, +}; + #define HNS3_QUERY_CAP_LENGTH 3 struct hns3_query_version_cmd { uint32_t firmware; uint32_t hardware; - uint32_t rsv; + uint32_t api_caps; uint32_t caps[HNS3_QUERY_CAP_LENGTH]; /* capabilities of device */ }; diff --git a/drivers/net/hns3/hns3_dcb.c b/drivers/net/hns3/hns3_dcb.c index fb501795f0..ab77acd948 100644 --- a/drivers/net/hns3/hns3_dcb.c +++ b/drivers/net/hns3/hns3_dcb.c @@ -634,7 +634,7 @@ hns3_set_rss_size(struct hns3_hw *hw, uint16_t nb_rx_q) * stage of the reset process. */ if (rte_atomic16_read(&hw->reset.resetting) == 0) { - for (i = 0; i < HNS3_RSS_IND_TBL_SIZE; i++) + for (i = 0; i < hw->rss_ind_tbl_size; i++) rss_cfg->rss_indirection_tbl[i] = i % hw->alloc_rss_size; } diff --git a/drivers/net/hns3/hns3_ethdev.c b/drivers/net/hns3/hns3_ethdev.c index 0eb49a10aa..fc41af626b 100644 --- a/drivers/net/hns3/hns3_ethdev.c +++ b/drivers/net/hns3/hns3_ethdev.c @@ -2568,7 +2568,7 @@ hns3_dev_infos_get(struct rte_eth_dev *eth_dev, struct rte_eth_dev_info *info) info->vmdq_queue_num = 0; - info->reta_size = HNS3_RSS_IND_TBL_SIZE; + info->reta_size = hw->rss_ind_tbl_size; info->hash_key_size = HNS3_RSS_KEY_SIZE; info->flow_type_rss_offloads = HNS3_ETH_RSS_SUPPORT; @@ -2958,6 +2958,20 @@ hns3_parse_dev_specifications(struct hns3_hw *hw, struct hns3_cmd_desc *desc) hw->intr.int_ql_max = rte_le_to_cpu_16(req0->intr_ql_max); } +static int +hns3_check_dev_specifications(struct hns3_hw *hw) +{ + if (hw->rss_ind_tbl_size == 0 || + hw->rss_ind_tbl_size > HNS3_RSS_IND_TBL_SIZE_MAX) { + hns3_err(hw, "the size of hash lookup table configured (%u)" + " exceeds the maximum(%u)", hw->rss_ind_tbl_size, + HNS3_RSS_IND_TBL_SIZE_MAX); + return -EINVAL; + } + + return 0; +} + static int hns3_query_dev_specifications(struct hns3_hw *hw) { @@ -2978,7 +2992,7 @@ hns3_query_dev_specifications(struct hns3_hw *hw) hns3_parse_dev_specifications(hw, desc); - return 0; + return hns3_check_dev_specifications(hw); } static int diff --git a/drivers/net/hns3/hns3_ethdev_vf.c b/drivers/net/hns3/hns3_ethdev_vf.c index 291166c461..34603a4a30 100644 --- a/drivers/net/hns3/hns3_ethdev_vf.c +++ b/drivers/net/hns3/hns3_ethdev_vf.c @@ -1022,7 +1022,7 @@ hns3vf_dev_infos_get(struct rte_eth_dev *eth_dev, struct rte_eth_dev_info *info) info->vmdq_queue_num = 0; - info->reta_size = HNS3_RSS_IND_TBL_SIZE; + info->reta_size = hw->rss_ind_tbl_size; info->hash_key_size = HNS3_RSS_KEY_SIZE; info->flow_type_rss_offloads = HNS3_ETH_RSS_SUPPORT; info->default_rxportconf.ring_size = HNS3_DEFAULT_RING_DESC; @@ -1154,6 +1154,20 @@ hns3vf_parse_dev_specifications(struct hns3_hw *hw, struct hns3_cmd_desc *desc) hw->intr.int_ql_max = rte_le_to_cpu_16(req0->intr_ql_max); } +static int +hns3vf_check_dev_specifications(struct hns3_hw *hw) +{ + if (hw->rss_ind_tbl_size == 0 || + hw->rss_ind_tbl_size > HNS3_RSS_IND_TBL_SIZE_MAX) { + hns3_warn(hw, "the size of hash lookup table configured (%u)" + " exceeds the maximum(%u)", hw->rss_ind_tbl_size, + HNS3_RSS_IND_TBL_SIZE_MAX); + return -EINVAL; + } + + return 0; +} + static int hns3vf_query_dev_specifications(struct hns3_hw *hw) { @@ -1174,7 +1188,7 @@ hns3vf_query_dev_specifications(struct hns3_hw *hw) hns3vf_parse_dev_specifications(hw, desc); - return 0; + return hns3vf_check_dev_specifications(hw); } static int diff --git a/drivers/net/hns3/hns3_flow.c b/drivers/net/hns3/hns3_flow.c index 89c22dc294..5f5e2b0128 100644 --- a/drivers/net/hns3/hns3_flow.c +++ b/drivers/net/hns3/hns3_flow.c @@ -1505,14 +1505,14 @@ hns3_update_indir_table(struct rte_eth_dev *dev, { struct hns3_adapter *hns = dev->data->dev_private; struct hns3_hw *hw = &hns->hw; - uint16_t indir_tbl[HNS3_RSS_IND_TBL_SIZE]; + uint16_t indir_tbl[HNS3_RSS_IND_TBL_SIZE_MAX]; uint16_t j; uint32_t i; /* Fill in redirection table */ memcpy(indir_tbl, hw->rss_info.rss_indirection_tbl, sizeof(hw->rss_info.rss_indirection_tbl)); - for (i = 0, j = 0; i < HNS3_RSS_IND_TBL_SIZE; i++, j++) { + for (i = 0, j = 0; i < hw->rss_ind_tbl_size; i++, j++) { j %= num; if (conf->queue[j] >= hw->alloc_rss_size) { hns3_err(hw, "queue id(%u) set to redirection table " @@ -1523,7 +1523,7 @@ hns3_update_indir_table(struct rte_eth_dev *dev, indir_tbl[i] = conf->queue[j]; } - return hns3_set_rss_indir_table(hw, indir_tbl, HNS3_RSS_IND_TBL_SIZE); + return hns3_set_rss_indir_table(hw, indir_tbl, hw->rss_ind_tbl_size); } static int diff --git a/drivers/net/hns3/hns3_rss.c b/drivers/net/hns3/hns3_rss.c index e2f04687b2..7bd7745859 100644 --- a/drivers/net/hns3/hns3_rss.c +++ b/drivers/net/hns3/hns3_rss.c @@ -312,7 +312,7 @@ hns3_set_rss_indir_table(struct hns3_hw *hw, uint16_t *indir, uint16_t size) /* Update redirection table of hw */ memcpy(hw->rss_info.rss_indirection_tbl, indir, - sizeof(hw->rss_info.rss_indirection_tbl)); + sizeof(uint16_t) * size); return 0; } @@ -324,13 +324,13 @@ hns3_rss_reset_indir_table(struct hns3_hw *hw) int ret; lut = rte_zmalloc("hns3_rss_lut", - HNS3_RSS_IND_TBL_SIZE * sizeof(uint16_t), 0); + hw->rss_ind_tbl_size * sizeof(uint16_t), 0); if (lut == NULL) { hns3_err(hw, "No hns3_rss_lut memory can be allocated"); return -ENOMEM; } - ret = hns3_set_rss_indir_table(hw, lut, HNS3_RSS_IND_TBL_SIZE); + ret = hns3_set_rss_indir_table(hw, lut, hw->rss_ind_tbl_size); if (ret) hns3_err(hw, "RSS uninit indir table failed: %d", ret); rte_free(lut); @@ -428,7 +428,7 @@ hns3_dev_rss_hash_update(struct rte_eth_dev *dev, } else if (rss_hf && rss_cfg->conf.types == 0) { /* Enable RSS, restore indirection table by hw's config */ ret = hns3_set_rss_indir_table(hw, rss_cfg->rss_indirection_tbl, - HNS3_RSS_IND_TBL_SIZE); + hw->rss_ind_tbl_size); if (ret) goto conf_err; } @@ -505,15 +505,15 @@ hns3_dev_rss_reta_update(struct rte_eth_dev *dev, struct hns3_adapter *hns = dev->data->dev_private; struct hns3_hw *hw = &hns->hw; struct hns3_rss_conf *rss_cfg = &hw->rss_info; - uint16_t i, indir_size = HNS3_RSS_IND_TBL_SIZE; /* Table size is 512 */ - uint16_t indirection_tbl[HNS3_RSS_IND_TBL_SIZE]; + uint16_t indirection_tbl[HNS3_RSS_IND_TBL_SIZE_MAX]; uint16_t idx, shift; + uint16_t i; int ret; - if (reta_size != indir_size || reta_size > ETH_RSS_RETA_SIZE_512) { + if (reta_size != hw->rss_ind_tbl_size) { hns3_err(hw, "The size of hash lookup table configured (%u)" "doesn't match the number hardware can supported" - "(%u)", reta_size, indir_size); + "(%u)", reta_size, hw->rss_ind_tbl_size); return -EINVAL; } rte_spinlock_lock(&hw->lock); @@ -536,7 +536,7 @@ hns3_dev_rss_reta_update(struct rte_eth_dev *dev, } ret = hns3_set_rss_indir_table(hw, indirection_tbl, - HNS3_RSS_IND_TBL_SIZE); + hw->rss_ind_tbl_size); rte_spinlock_unlock(&hw->lock); return ret; @@ -561,13 +561,13 @@ hns3_dev_rss_reta_query(struct rte_eth_dev *dev, struct hns3_adapter *hns = dev->data->dev_private; struct hns3_hw *hw = &hns->hw; struct hns3_rss_conf *rss_cfg = &hw->rss_info; - uint16_t i, indir_size = HNS3_RSS_IND_TBL_SIZE; /* Table size is 512 */ uint16_t idx, shift; + uint16_t i; - if (reta_size != indir_size || reta_size > ETH_RSS_RETA_SIZE_512) { + if (reta_size != hw->rss_ind_tbl_size) { hns3_err(hw, "The size of hash lookup table configured (%u)" " doesn't match the number hardware can supported" - "(%u)", reta_size, indir_size); + "(%u)", reta_size, hw->rss_ind_tbl_size); return -EINVAL; } rte_spinlock_lock(&hw->lock); @@ -667,7 +667,7 @@ hns3_set_default_rss_args(struct hns3_hw *hw) memcpy(rss_cfg->key, hns3_hash_key, HNS3_RSS_KEY_SIZE); /* Initialize RSS indirection table */ - for (i = 0; i < HNS3_RSS_IND_TBL_SIZE; i++) + for (i = 0; i < hw->rss_ind_tbl_size; i++) rss_cfg->rss_indirection_tbl[i] = i % queue_num; } @@ -716,7 +716,7 @@ hns3_config_rss(struct hns3_adapter *hns) */ if (((uint32_t)mq_mode & ETH_MQ_RX_RSS_FLAG)) { ret = hns3_set_rss_indir_table(hw, rss_cfg->rss_indirection_tbl, - HNS3_RSS_IND_TBL_SIZE); + hw->rss_ind_tbl_size); if (ret) goto rss_tuple_uninit; } diff --git a/drivers/net/hns3/hns3_rss.h b/drivers/net/hns3/hns3_rss.h index 6d1d25f227..798c5c62df 100644 --- a/drivers/net/hns3/hns3_rss.h +++ b/drivers/net/hns3/hns3_rss.h @@ -24,9 +24,8 @@ ETH_RSS_L4_DST_ONLY) #define HNS3_RSS_IND_TBL_SIZE 512 /* The size of hash lookup table */ +#define HNS3_RSS_IND_TBL_SIZE_MAX 2048 #define HNS3_RSS_KEY_SIZE 40 -#define HNS3_RSS_CFG_TBL_NUM \ - (HNS3_RSS_IND_TBL_SIZE / HNS3_RSS_CFG_TBL_SIZE) #define HNS3_RSS_SET_BITMAP_MSK 0xffff #define HNS3_RSS_HASH_ALGO_TOEPLITZ 0 @@ -45,7 +44,7 @@ struct hns3_rss_conf { uint8_t hash_algo; /* hash function type definited by hardware */ uint8_t key[HNS3_RSS_KEY_SIZE]; /* Hash key */ struct hns3_rss_tuple_cfg rss_tuple_sets; - uint16_t rss_indirection_tbl[HNS3_RSS_IND_TBL_SIZE]; /* Shadow table */ + uint16_t rss_indirection_tbl[HNS3_RSS_IND_TBL_SIZE_MAX]; uint16_t queue[HNS3_RSS_QUEUES_BUFFER_NUM]; /* Queues indices to use */ bool valid; /* check if RSS rule is valid */ /* -- 2.29.2 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2021-02-09 10:34:58.570261545 +0000 +++ 0016-net-hns3-fix-RSS-indirection-table-size.patch 2021-02-09 10:34:57.906583926 +0000 @@ -1 +1 @@ -From 0fce2c46dc16294dd193dd5bb84506e4570566b1 Mon Sep 17 00:00:00 2001 +From aabbdedad2c26235f9d2a9ca443adcf90e5f769c Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 0fce2c46dc16294dd193dd5bb84506e4570566b1 ] + @@ -12 +13,0 @@ -Cc: stable@dpdk.org @@ -27 +28 @@ -index 9ed8161372..b75002202a 100644 +index f58f4f7adc..cd14b1b69d 100644 @@ -30 +31 @@ -@@ -430,6 +430,16 @@ static void hns3_parse_capability(struct hns3_hw *hw, +@@ -432,6 +432,16 @@ static void hns3_parse_capability(struct hns3_hw *hw, @@ -47 +48 @@ -@@ -439,6 +449,7 @@ hns3_cmd_query_firmware_version_and_capability(struct hns3_hw *hw) +@@ -441,6 +451,7 @@ hns3_cmd_query_firmware_version_and_capability(struct hns3_hw *hw) @@ -56 +57 @@ -index ad5e188315..5640fe4ead 100644 +index 761735da87..f7ab1f4ca3 100644 @@ -59 +60 @@ -@@ -295,11 +295,16 @@ enum HNS3_CAPS_BITS { +@@ -294,11 +294,16 @@ enum HNS3_CAPS_BITS { @@ -78 +79 @@ -index 5aa374ceaa..7fc6ac92d8 100644 +index fb501795f0..ab77acd948 100644 @@ -81 +82 @@ -@@ -644,7 +644,7 @@ hns3_set_rss_size(struct hns3_hw *hw, uint16_t nb_rx_q) +@@ -634,7 +634,7 @@ hns3_set_rss_size(struct hns3_hw *hw, uint16_t nb_rx_q) @@ -84 +85 @@ - if (__atomic_load_n(&hw->reset.resetting, __ATOMIC_RELAXED) == 0) { + if (rte_atomic16_read(&hw->reset.resetting) == 0) { @@ -91 +92 @@ -index f93870d24b..c0ab3fc960 100644 +index 0eb49a10aa..fc41af626b 100644 @@ -94 +95 @@ -@@ -2593,7 +2593,7 @@ hns3_dev_infos_get(struct rte_eth_dev *eth_dev, struct rte_eth_dev_info *info) +@@ -2568,7 +2568,7 @@ hns3_dev_infos_get(struct rte_eth_dev *eth_dev, struct rte_eth_dev_info *info) @@ -103 +104 @@ -@@ -2983,6 +2983,20 @@ hns3_parse_dev_specifications(struct hns3_hw *hw, struct hns3_cmd_desc *desc) +@@ -2958,6 +2958,20 @@ hns3_parse_dev_specifications(struct hns3_hw *hw, struct hns3_cmd_desc *desc) @@ -124 +125 @@ -@@ -3003,7 +3017,7 @@ hns3_query_dev_specifications(struct hns3_hw *hw) +@@ -2978,7 +2992,7 @@ hns3_query_dev_specifications(struct hns3_hw *hw) @@ -134 +135 @@ -index faf7e01c01..2446574474 100644 +index 291166c461..34603a4a30 100644 @@ -137 +138 @@ -@@ -1016,7 +1016,7 @@ hns3vf_dev_infos_get(struct rte_eth_dev *eth_dev, struct rte_eth_dev_info *info) +@@ -1022,7 +1022,7 @@ hns3vf_dev_infos_get(struct rte_eth_dev *eth_dev, struct rte_eth_dev_info *info) @@ -146 +147 @@ -@@ -1148,6 +1148,20 @@ hns3vf_parse_dev_specifications(struct hns3_hw *hw, struct hns3_cmd_desc *desc) +@@ -1154,6 +1154,20 @@ hns3vf_parse_dev_specifications(struct hns3_hw *hw, struct hns3_cmd_desc *desc) @@ -167 +168 @@ -@@ -1168,7 +1182,7 @@ hns3vf_query_dev_specifications(struct hns3_hw *hw) +@@ -1174,7 +1188,7 @@ hns3vf_query_dev_specifications(struct hns3_hw *hw) @@ -177 +178 @@ -index 3e387ac0bf..a6011245c5 100644 +index 89c22dc294..5f5e2b0128 100644 @@ -180 +181 @@ -@@ -1489,14 +1489,14 @@ hns3_update_indir_table(struct rte_eth_dev *dev, +@@ -1505,14 +1505,14 @@ hns3_update_indir_table(struct rte_eth_dev *dev, @@ -197 +198 @@ -@@ -1507,7 +1507,7 @@ hns3_update_indir_table(struct rte_eth_dev *dev, +@@ -1523,7 +1523,7 @@ hns3_update_indir_table(struct rte_eth_dev *dev, @@ -207 +208 @@ -index 7d1a29782a..858e31a234 100644 +index e2f04687b2..7bd7745859 100644 @@ -290 +291 @@ -@@ -662,7 +662,7 @@ hns3_rss_set_default_args(struct hns3_hw *hw) +@@ -667,7 +667,7 @@ hns3_set_default_rss_args(struct hns3_hw *hw) @@ -299 +300 @@ -@@ -711,7 +711,7 @@ hns3_config_rss(struct hns3_adapter *hns) +@@ -716,7 +716,7 @@ hns3_config_rss(struct hns3_adapter *hns) @@ -309 +310 @@ -index 05d5c2642b..94668ed6d5 100644 +index 6d1d25f227..798c5c62df 100644