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 D195AA04C0; Fri, 9 Oct 2020 14:00:01 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id D5A1E1D563; Fri, 9 Oct 2020 13:59:59 +0200 (CEST) Received: from huawei.com (szxga05-in.huawei.com [45.249.212.191]) by dpdk.org (Postfix) with ESMTP id C47B71D532 for ; Fri, 9 Oct 2020 13:59:57 +0200 (CEST) Received: from DGGEMS402-HUB.china.huawei.com (unknown [172.30.72.58]) by Forcepoint Email with ESMTP id D147095B78B83CF17C73; Fri, 9 Oct 2020 19:59:55 +0800 (CST) Received: from [10.67.103.119] (10.67.103.119) by DGGEMS402-HUB.china.huawei.com (10.3.19.202) with Microsoft SMTP Server id 14.3.487.0; Fri, 9 Oct 2020 19:59:45 +0800 To: Ferruh Yigit , , , CC: , References: <1599702678-11142-1-git-send-email-oulijun@huawei.com> <1600955105-53176-1-git-send-email-oulijun@huawei.com> <1600955105-53176-2-git-send-email-oulijun@huawei.com> From: oulijun Message-ID: <5ca8988c-741f-d9e2-3f53-2c97fe64ee5b@huawei.com> Date: Fri, 9 Oct 2020 19:59:45 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.1.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [10.67.103.119] X-CFilter-Loop: Reflected Subject: Re: [dpdk-dev] [PATCH v4] app/testpmd: fix the default RSS key configuration 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" 在 2020/9/30 21:36, Ferruh Yigit 写道: > On 9/24/2020 2:45 PM, Lijun Ou wrote: >> It use the NIC valid default RSS key instead of the testpmd >> dummy RSS key in the flow configuration when the RSS key is >> not specified in the flow rule. If the NIC RSS key is >> invalid, it will use testpmd dummy RSS key as the default >> key. >> >> Fixes: ac8d22de2394 ("ethdev: flatten RSS configuration in flow API") >> Cc: stable@dpdk.org >> >> Signed-off-by: Lijun Ou >> --- >> V3->V4: >> -fix checkpatch warning and shorter commit content. >> >> V2->V3: >> -fix checkpatch warning. >> >> V1->V2: >> -fix the commit. >> --- >> app/test-pmd/cmdline_flow.c | 8 ++++++++ >> 1 file changed, 8 insertions(+) >> >> diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c >> index 6263d30..e6648da 100644 >> --- a/app/test-pmd/cmdline_flow.c >> +++ b/app/test-pmd/cmdline_flow.c >> @@ -4312,6 +4312,7 @@ parse_vc_action_rss(struct context *ctx, const >> struct token *token, >> action_rss_data->queue[i] = i; >> if (!port_id_is_invalid(ctx->port, DISABLED_WARN) && >> ctx->port != (portid_t)RTE_PORT_ALL) { >> + struct rte_eth_rss_conf rss_conf = {0}; >> struct rte_eth_dev_info info; >> int ret2; >> @@ -4322,6 +4323,13 @@ parse_vc_action_rss(struct context *ctx, const >> struct token *token, >> action_rss_data->conf.key_len = >> RTE_MIN(sizeof(action_rss_data->key), >> info.hash_key_size); >> + >> + rss_conf.rss_key_len = sizeof(action_rss_data->key); >> + rss_conf.rss_key = action_rss_data->key; >> + ret2 = rte_eth_dev_rss_hash_conf_get(ctx->port, &rss_conf); >> + if (ret2 != 0) >> + return ret2; >> + action_rss_data->conf.key = rss_conf.rss_key; > > Do you need this last assignment at all? > 'rss_conf.rss_key' point to 'action_rss_data->key' > 'action_rss_data->conf.key' already point to 'action_rss_data->key' > so it just assigns same value back, no? > You need to call rte_eth_dev_rss_hash_conf_get to obtain the RSS hash key configured in the hardware as the default key. Currently, the testpmd uses a key that is different from that configured in the hardware after the testpmd is started as the default key when users crearte a RSS flow rule without specifying a RSS hash key. > . >