[dpdk-dev] [PATCH v2 00/26] DPDK PMD for OCTEONTX NW device

Thomas Monjalon thomas at monjalon.net
Wed Oct 11 12:35:27 CEST 2017


09/10/2017 04:07, Ferruh Yigit:
> On 10/8/2017 1:44 PM, Santosh Shukla wrote:
> > v2:
> > Includes Minor changes like:
> > - Incorporated minor review comment (Suggested y John)
> > - Added correct pool handle ops name i.e. from mbuf-pool-ops to
> >   mbuf-pool-ops-name in the doc.
> > - Rebased on Octeontx-fpavf v3 series and tested for same.
> > - Refer[7]: rebased (octeontx PMD + octeontx_fpavf mempool pmd) on upstream
> >   tip commit : 3fb1ea032bd6ff8317af5dac9af901f1f324cab4.
> > 
> > v1:
> > This patch set provides the initial version of DPDK PMD for the
> > integrated NIC device found in Cavium OCTEONTX SoC(CN83xx) family.
> > 
> > Introduction to OCTEONTX ARM processors can be found
> > here: http://www.cavium.com/OCTEON-TX_ARM_Processors.html
> > 
> > OCTEONTX SoC family has two types of NIC controllers,
> > 1) nicvf HW, Which is more like traditional NIC(no NPU HW accelerators)
> > http://dpdk.org/doc/guides/nics/thunderx.html
> > 
> > 2) NIC controller, based on NPU like HW accelerated coprocessors, like
> > HW assisted mempool manager, HW assisted packet scheduler, etc
> > 
> > This driver adds support for the second type device and which will be
> > used as HW implementation driver ethdev-eventdev Rx adapter [1]
> > 
> > Implemented features and PMD documentation added
> > in doc/guides/nics/features/octeontx.ini and doc/guides/nics/octeontx.rst
> > respectively in this patch set.
> > 
> > This driver has the dependency on:
> > - IOVA infrastructure [2].
> > - Dynamically configure mempool handle (ie.. --mbuf-pool-ops eal arg) [3].
> > - Infrastructure to support octeontx HW mempool manager [4].
> > - Cavium Octeontx external mempool driver [5]
> > Git source repo for all above dependency patches located at [6].
> > 
> > The series has three check patch issues:
> > 1) 1 Error on Complex Macro (which I believe it cannot be fixed) # Patch 2
> > 2) 1 Error on spacing while using gcc inline assembly(it is false positive) # patch 2
> > 3) Added Co-authored-by: signature to reflect the patch authorship status instead
> > of "Signed-off-by". It can be changed or the contributing guide can be
> > updated based on the community feedback in v2.
> > 
> > [1] http://dpdk.org/dev/patchwork/patch/24176/
> > [2] http://dpdk.org/ml/archives/dev/2017-August/072871.html
> > [3] http://dpdk.org/ml/archives/dev/2017-August/072910.html
> > [4] http://dpdk.org/ml/archives/dev/2017-August/072892.html
> > [5] http://dpdk.org/ml/archives/dev/2017-August/073898.html
> > [6] https://github.com/sshukla82/dpdk branch: mempool-v2
> > [7] https://github.com/sshukla82/dpdk branch: octeontx-ona-pmd-v2
> > 
> > 
> > Jerin Jacob (26):
> >   net/octeontx: add build infrastructure
> >   net/octeontx/base: add octeontx io operations
> >   event/octeontx: introduce specialized mbox message copy
> >   net/octeontx/base: add base BGX operations
> >   net/octeontx/base: add remaining BGX operations
> >   net/octeontx/base: probe PKI and PKO PCIe VF devices
> >   net/octeontx/base: add base PKI operations
> >   net/octeontx/base: add remaining PKI operations
> >   net/octeontx/base: add base PKO operations
> >   net/octeontx/base: add remaining PKO operations
> >   net/octeontx: add eth device probe and remove
> >   net/octeontx: create ethdev ports
> >   net/octeontx: add device configure
> >   net/octeontx: add device info
> >   net/octeontx: add link update
> >   net/octeontx: add promiscuous mode ops
> >   net/octeontx: add basic stats support
> >   net/octeontx: add MAC addr set op
> >   net/octeontx: add Rx queue setup and release ops
> >   net/octeontx: add Tx queue start and stop
> >   net/octeontx: add Tx queue setup and release ops
> >   net/octeontx: add packet transmit burst function
> >   net/octeontx: add packet receive burst function
> >   net/octeontx: add packet type parsing support
> >   net/octeontx: add start and stop support
> >   doc: add octeontx ethdev driver documentation
> 
> Series applied to dpdk-next-net/master, thanks.

The tree dpdk-next-net cannot be pulled in master
because this series is breaking 32-bit compilation with debug enabled.

Two comments about logs in this driver:

1/ We must not accept some DEBUG configs anymore.
Thanks to dynamic log configuration, we can avoid such compile-time options.
The same mistake was done for OCTEONTX mempool.
Please remove all these DEBUG config options for 17.11-rc2.

2/ When printing a 64-bit variable, %ld or %lx is wrong.
You must use PRId64 or PRIx64.

We have two options for this patchset.
Either the compilation is fixed and squashed today, or it is removed from RC1.
Hope you can fix it quickly.


More information about the dev mailing list