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 035E1A0A02; Tue, 27 Apr 2021 16:14:02 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7D60F4124C; Tue, 27 Apr 2021 16:14:02 +0200 (CEST) Received: from szxga04-in.huawei.com (szxga04-in.huawei.com [45.249.212.190]) by mails.dpdk.org (Postfix) with ESMTP id 3928941243 for ; Tue, 27 Apr 2021 16:14:00 +0200 (CEST) Received: from DGGEMS413-HUB.china.huawei.com (unknown [172.30.72.58]) by szxga04-in.huawei.com (SkyGuard) with ESMTP id 4FV3bP407fz19Lcl for ; Tue, 27 Apr 2021 22:11:29 +0800 (CST) Received: from [10.66.74.184] (10.66.74.184) by DGGEMS413-HUB.china.huawei.com (10.3.19.213) with Microsoft SMTP Server id 14.3.498.0; Tue, 27 Apr 2021 22:13:52 +0800 To: "Li, Xiaoyun" , "dev@dpdk.org" CC: "Yigit, Ferruh" References: <1614939741-63927-1-git-send-email-oulijun@huawei.com> <1618909266-17584-1-git-send-email-lihuisong@huawei.com> <1618909266-17584-3-git-send-email-lihuisong@huawei.com> From: Huisong Li Message-ID: <4d1542ba-dbb2-dbf9-3dfd-7aac952b3945@huawei.com> Date: Tue, 27 Apr 2021 22:13:52 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.8.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.66.74.184] X-CFilter-Loop: Reflected Subject: Re: [dpdk-dev] [PATCH V3 2/7] app/testpmd: fix DCB forwarding configuration X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 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" 在 2021/4/27 18:59, Li, Xiaoyun 写道: > >> -----Original Message----- >> From: Huisong Li >> Sent: Tuesday, April 20, 2021 17:01 >> To: dev@dpdk.org >> Cc: Yigit, Ferruh ; Li, Xiaoyun ; >> linuxarm@openeuler.org; lihuisong@huawei.com >> Subject: [PATCH V3 2/7] app/testpmd: fix DCB forwarding configuration >> >> After DCB mode is configured, the operations of port stop and port start change >> the value of the global variable "dcb_test", As a result, the forwarding >> configuration from DCB to RSS mode, namely, “dcb_fwd_config_setup()” to >> "rss_fwd_config_setup()". >> >> Currently, the 'dcb_flag' field in struct 'rte_port' indicates whether the port is >> configured with DCB. And it is sufficient to have 'dcb_config' >> as a global variable to control the DCB test status. So this patch deletes the >> "dcb_test". >> >> In addition, the 'dcb_config' is first set to 1 first in init_port_dcb_config(), but >> the function may fail. >> So it should be moved to the end. > Change this to the following will be better: > In addition, setting 'dcb_config' at the end of init_port_dcb_config() in case that ports fail to enter DCB mode. ok >> Fixes: 900550de04a7 ("app/testpmd: add dcb support") >> Fixes: ce8d561418d4 ("app/testpmd: add port configuration settings") >> Fixes: 7741e4cf16c0 ("app/testpmd: VMDq and DCB updates") >> Cc: stable@dpdk.org >> >> Signed-off-by: Huisong Li >> Signed-off-by: Lijun Ou >> --- >> app/test-pmd/testpmd.c | 18 ++++-------------- app/test-pmd/testpmd.h | 1 - >> 2 files changed, 4 insertions(+), 15 deletions(-) >> >> diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index >> d4be23f..a076b1d 100644 >> --- a/app/test-pmd/testpmd.c >> +++ b/app/test-pmd/testpmd.c >> @@ -246,9 +246,6 @@ uint16_t mb_mempool_cache = DEF_MBUF_CACHE; >> /**< Size of mbuf mempool cache. */ >> /* current configuration is in DCB or not,0 means it is not in DCB mode */ >> uint8_t dcb_config = 0; >> >> -/* Whether the dcb is in testing status */ -uint8_t dcb_test = 0; >> - >> /* >> * Configurable number of RX/TX queues. >> */ >> @@ -2167,8 +2164,7 @@ start_packet_forwarding(int with_tx_first) >> return; >> } >> >> - >> - if(dcb_test) { >> + if (dcb_config) { >> for (i = 0; i < nb_fwd_ports; i++) { >> pt_id = fwd_ports_ids[i]; >> port = &ports[pt_id]; >> @@ -2476,8 +2472,6 @@ start_port(portid_t pid) >> if (port_id_is_invalid(pid, ENABLED_WARN)) >> return 0; >> >> - if(dcb_config) >> - dcb_test = 1; >> RTE_ETH_FOREACH_DEV(pi) { >> if (pid != pi && pid != (portid_t)RTE_PORT_ALL) >> continue; >> @@ -2717,11 +2711,6 @@ stop_port(portid_t pid) >> portid_t peer_pl[RTE_MAX_ETHPORTS]; >> int peer_pi; >> >> - if (dcb_test) { >> - dcb_test = 0; >> - dcb_config = 0; >> - } >> - >> if (port_id_is_invalid(pid, ENABLED_WARN)) >> return; >> >> @@ -3625,8 +3614,6 @@ init_port_dcb_config(portid_t pid, >> rte_port = &ports[pid]; >> >> memset(&port_conf, 0, sizeof(struct rte_eth_conf)); >> - /* Enter DCB configuration status */ >> - dcb_config = 1; >> >> port_conf.rxmode = rte_port->dev_conf.rxmode; >> port_conf.txmode = rte_port->dev_conf.txmode; @@ -3694,6 +3681,9 >> @@ init_port_dcb_config(portid_t pid, >> >> rte_port->dcb_flag = 1; >> >> + /* Enter DCB configuration status */ >> + dcb_config = 1; >> + >> return 0; >> } >> >> diff --git a/app/test-pmd/testpmd.h b/app/test-pmd/testpmd.h index >> 9530ec5..432c66d 100644 >> --- a/app/test-pmd/testpmd.h >> +++ b/app/test-pmd/testpmd.h >> @@ -425,7 +425,6 @@ extern uint64_t noisy_lkup_num_reads; extern uint64_t >> noisy_lkup_num_reads_writes; >> >> extern uint8_t dcb_config; >> -extern uint8_t dcb_test; >> >> extern uint32_t mbuf_data_size_n; >> extern uint16_t mbuf_data_size[MAX_SEGS_BUFFER_SPLIT]; >> -- >> 2.7.4