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 92F5EA0C44; Mon, 12 Apr 2021 12:35:49 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2E4AE1410CF; Mon, 12 Apr 2021 12:35:49 +0200 (CEST) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mails.dpdk.org (Postfix) with ESMTP id B8B791410CC for ; Mon, 12 Apr 2021 12:35:46 +0200 (CEST) IronPort-SDR: fBdFERG/4CG4GJFz9xaCFLxOrYCdWorvbAcj/7XbvmiRozJJXj6lc4buinMekmW8eNJAbWejnM /X5krKIozgrg== X-IronPort-AV: E=McAfee;i="6000,8403,9951"; a="181286353" X-IronPort-AV: E=Sophos;i="5.82,216,1613462400"; d="scan'208";a="181286353" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Apr 2021 03:35:44 -0700 IronPort-SDR: Emme19PmCZoAlwaRedQL5cwUQ3OrGJAwvpjIj34ZOb7DNzYoPSB5nU9tJ8IBvljmWF+v8xO5tJ 7i4n1B4CeQ4w== X-IronPort-AV: E=Sophos;i="5.82,216,1613462400"; d="scan'208";a="460115974" Received: from fyigit-mobl1.ger.corp.intel.com (HELO [10.213.203.254]) ([10.213.203.254]) by orsmga001-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Apr 2021 03:35:43 -0700 To: Lijun Ou , xiaoyun.li@intel.com Cc: dev@dpdk.org, linuxarm@openeuler.org References: <1614939741-63927-1-git-send-email-oulijun@huawei.com> <1614939741-63927-3-git-send-email-oulijun@huawei.com> From: Ferruh Yigit X-User: ferruhy Message-ID: <867667e8-c0fb-f31f-61f7-8c26f099b756@intel.com> Date: Mon, 12 Apr 2021 11:35:39 +0100 MIME-Version: 1.0 In-Reply-To: <1614939741-63927-3-git-send-email-oulijun@huawei.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Subject: Re: [dpdk-dev] [PATCH 2/3] app/testpmd: remove forwarding config from parsing Rx and Tx 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" On 3/5/2021 10:22 AM, Lijun Ou wrote: > From: Huisong Li > > The "fwd_config_setup()" function does release and apply for > memory of forwarding flows, and re-establish these streams when > rxq/txq or rxd/txd is changed. The function is also called by > "start_packet_forwarding()" when user executes "start" cmd. > All changes for rxq/txq or rxd/txd can be updated uniformly > when this command is executed. Therefore, it is a little > redundant in the "cmd_config_rx_tx_parsed" function. > > In addition, the forwarding stream under one TC is configured > based on number of queues allocated to TC. And number of queues > allocated to TC is updated after calling "rte_eth_dev_configure" > again. If the number of queues is reduced after configuring the > DCB, and then, release and apply for stream memory, and reinitialize > the forwarding stream under the DCB mode based on the old TC > information. As a result, null pointer may be accessed. > > Like: > set nbcore 4 > port stop all > port config 0 dcb vt off 4 pfc on > port start all > port stop all > port config all rxq 8 > port config all txq 8 > > At the moment, a segmentation fault occurs. > Hi Lijun, Xiaoyun, I read the thread and checked the code, but still I am not completely clear with the dcp implementation in testpmd. But the "dcb_config = 0" in the 'stop_port()' that has been removed in the patch 1/3 seems preventing these kind of config combination, with implicitly resetting the dcb feature with port stop. What do you think just have the number of forwarding cores adjustment change in the patch 1/3, and keep the 'stop_port()' as it is, will it solve this problem, and how acceptable it will be do you think? > Fixes: ce8d561418d4 ("app/testpmd: add port configuration settings") > Cc: stable@dpdk.org > > Signed-off-by: Huisong Li > Signed-off-by: Lijun Ou > --- > V1->V2: > - use stream instead of flow > --- > app/test-pmd/cmdline.c | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c > index 4df0c32..e316f5c 100644 > --- a/app/test-pmd/cmdline.c > +++ b/app/test-pmd/cmdline.c > @@ -1837,8 +1837,6 @@ cmd_config_rx_tx_parsed(void *parsed_result, > return; > } > > - fwd_config_setup(); > - > init_port_config(); > > cmd_reconfig_device_queue(RTE_PORT_ALL, 1, 1); >