[EXT] Re: [PATCH 2/4] net/cnxk: restructure for cn10k datapath

Rahul Bhansali rbhansali at marvell.com
Tue Jan 17 11:24:13 CET 2023



> -----Original Message-----
> From: Jerin Jacob <jerinjacobk at gmail.com>
> Sent: Tuesday, January 17, 2023 2:22 PM
> To: Rahul Bhansali <rbhansali at marvell.com>
> Cc: dev at dpdk.org; Nithin Kumar Dabilpuram <ndabilpuram at marvell.com>;
> Kiran Kumar Kokkilagadda <kirankumark at marvell.com>; Sunil Kumar Kori
> <skori at marvell.com>; Satha Koteswara Rao Kottidi
> <skoteshwar at marvell.com>; Jerin Jacob Kollanukkaran <jerinj at marvell.com>
> Subject: [EXT] Re: [PATCH 2/4] net/cnxk: restructure for cn10k datapath
> 
> External Email
> 
> ----------------------------------------------------------------------
> On Wed, Dec 21, 2022 at 2:46 PM Rahul Bhansali <rbhansali at marvell.com>
> wrote:
> >
> > Restructure for separate cn10k datapath functionality to reduce
> > recompilation time in case of any changes in control path.
> >
> > New cnxk_ethdev_dp.h and cn10k_rxtx.h files are created to have
> > macros, functions as required for datapath with minimal dependency on
> > roc changes.
> >
> > Signed-off-by: Rahul Bhansali <rbhansali at marvell.com>
> 
> > index 422d2e4e1c..94ffcb74a8 100644
> > --- a/drivers/net/cnxk/tx/cn10k/tx_96_111_vec.c
> > +++ b/drivers/net/cnxk/tx/cn10k/tx_96_111_vec.c
> > @@ -2,9 +2,12 @@
> >   * Copyright(C) 2022 Marvell.
> >   */
> 
> >
> > diff --git a/drivers/net/cnxk/tx/cn10k/tx_96_111_vec_mseg.c
> > b/drivers/net/cnxk/tx/cn10k/tx_96_111_vec_mseg.c
> > index dbefae02e0..ad1d124968 100644
> > --- a/drivers/net/cnxk/tx/cn10k/tx_96_111_vec_mseg.c
> > +++ b/drivers/net/cnxk/tx/cn10k/tx_96_111_vec_mseg.c
> > @@ -2,9 +2,12 @@
> >   * Copyright(C) 2022 Marvell.
> >   */
> >
> > -#include "cn10k_ethdev.h"
> >  #include "cn10k_tx.h"
> >
> > +#ifdef _ROC_API_H_
> > +#error "roc_api.h is included"
> > +#endif
> 
> 1) There is build error[1], Please rebase to next-net-mrvl and fix the issue
Ack, will rebase and check the build.
 
> 2) Change 3/4 patch git comment subject to align with other patches
Ack.
 3)Is above
> 3 lines need to be added in everyfile, How about a)Include this on parent file .
> Say cn10k_rx.h ?
> b)Add a macro for this
cn10k_rx.h has all the fastpath Modes macro which are used in non-datapath also for callback assignments etc. Hence not used at parent file.

> 
> 
> 
> [1]
> FAILED:
> drivers/libtmp_rte_net_cnxk.a.p/net_cnxk_rx_cn10k_rx_112_127_vec_mseg.c.o
> ccache gcc -Idrivers/libtmp_rte_net_cnxk.a.p -Idrivers -I../drivers -
> Idrivers/net/cnxk -I../drivers/net/cnxk -Ilib/ethdev -I../lib/ethdev -I. -I.. -Iconfig -
> I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/
> eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -Ilib/eal/common -
> I../lib/eal/common -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/metrics -
> I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/net -I../lib/e t -Ilib/mbuf -
> I../lib/mbuf -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/meter -
> I../lib/meter -Idrivers/bus/pci -I../drivers/bus/pci -I../drivers/bus/pci/linux -
> Ilib/pci -I../lib/pci -Idrivers/bus/vdev -I../drivers/bus/vdev -Ilib/cryptodev -
> I../lib/cryptodev -Ilib/rcu -I../lib/rcu -Ilib/eventdev -I../lib/eventdev -Ilib/hash -
> I../lib/hash -Ilib/timer -I../lib/timer -Ilib/security -I../lib/security -
> Idrivers/common/cnxk -I../drivers/common/cnxk -Idrivers/mempool /cnxk -
> I../drivers/mempool/cnxk -fdiagnostics-color=always
> -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -O2 -g -include
> rte_config.h -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -
> Wformat-security -Wmissing-declaration s -Wmissing-prototypes -Wnested-
> externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-
> prototypes -Wundef -Wwrite-strings -Wno-address-of-packed-member -Wno-
> packed-not-aligned -Wno-missing-field-initializers -Wno-zero-length -bounds -
> D_GNU_SOURCE -fPIC -march=native -DALLOW_EXPERIMENTAL_API -
> DALLOW_INTERNAL_API -Wno-format-truncation -flax-vector-conversions -
> Wno-strict-aliasing -DRTE_LOG_DEFAULT_LOGTYPE=pmd.net.cnxk -MD -MQ
> drivers/libtmp_rte_net_cnxk.a.p/net_
> cnxk_rx_cn10k_rx_112_127_vec_mseg.c.o -MF
> drivers/libtmp_rte_net_cnxk.a.p/net_cnxk_rx_cn10k_rx_112_127_vec_mseg.c.o
> .d
> -o
> drivers/libtmp_rte_net_cnxk.a.p/net_cnxk_rx_cn10k_rx_112_127_vec_mseg.c.o
> -c ../drivers/net/cnxk/rx/cn10k/rx_112_127_ve
> c_mseg.c
> ../drivers/net/cnxk/rx/cn10k/rx_112_127_vec_mseg.c:8:2: error: #error
> "roc_api.h is included"
>     8 | #error "roc_api.h is included"
> 
> > +
> >  #define T(name, sz, flags)                                                     \
> >         NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz,
> > flags)
> >
> > --
> > 2.25.1
> >


More information about the dev mailing list