[prev in list] [next in list] [prev in thread] [next in thread]
List: dpdk-dev
Subject: RE: [PATCH v4] net/igc: add support for secondary processes
From: "Zhang, Qi Z" <qi.z.zhang () intel ! com>
Date: 2022-06-30 11:47:31
Message-ID: DM4PR11MB599484ACAD188A530C44BBCDD7BA9 () DM4PR11MB5994 ! namprd11 ! prod ! outlook ! com
[Download RAW message or body]
> -----Original Message-----
> From: Zeng, ZhichaoX <zhichaox.zeng@intel.com>
> Sent: Thursday, June 30, 2022 7:04 PM
> To: dev@dpdk.org
> Cc: stable@dpdk.org; Yang, Qiming <qiming.yang@intel.com>; Zhang, Qi Z
> <qi.z.zhang@intel.com>; Zeng, ZhichaoX <zhichaox.zeng@intel.com>;
> alvinx.zhang@intel.com; Guo, Junfeng <junfeng.guo@intel.com>; Su, Simei
> <simei.su@intel.com>; Burakov, Anatoly <anatoly.burakov@intel.com>; Ferruh
> Yigit <ferruh.yigit@intel.com>
> Subject: [PATCH v4] net/igc: add support for secondary processes
>
> From: Zhichao Zeng <zhichaox.zeng@intel.com>
>
> The RX function was not specified in the secondary process, causing the
> secondary process to segfault in a multi-process environment.
>
> This patch specify RX/TX functions in "dev_init" to support secondary processes.
>
> Fixes: 66fde1b943eb ("net/igc: add skeleton")
> Cc: alvinx.zhang@intel.com
> Cc: stable@dpdk.org
>
> Signed-off-by: Zhichao Zeng <zhichaox.zeng@intel.com>
>
> ---
> v2:
> remove unnecessary parameters, move declaration to relevant header file
> ---
> v3:
> remove redundant code, optimize commit log
> ---
> v4:
> rework patch
> ---
> drivers/net/igc/igc_ethdev.c | 9 ++++++++-
> drivers/net/igc/igc_txrx.c | 8 ++++----
> drivers/net/igc/igc_txrx.h | 6 ++++++
> 3 files changed, 18 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/net/igc/igc_ethdev.c b/drivers/net/igc/igc_ethdev.c index
> b9933b395d..7f221a5d34 100644
> --- a/drivers/net/igc/igc_ethdev.c
> +++ b/drivers/net/igc/igc_ethdev.c
> @@ -1240,8 +1240,15 @@ eth_igc_dev_init(struct rte_eth_dev *dev)
> * has already done this work. Only check we don't need a different
> * RX function.
> */
> - if (rte_eal_process_type() != RTE_PROC_PRIMARY)
> + if (rte_eal_process_type() != RTE_PROC_PRIMARY) {
> + dev->rx_pkt_burst = igc_recv_pkts;
> + if (dev->data->scattered_rx)
> + dev->rx_pkt_burst = igc_recv_scattered_pkts;
Please removed the redundant code in igc_rx_init
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic