[dpdk-dev] [PATCH v4 1/8] event/opdl: add the opdl ring infrastructure library

Jerin Jacob jerin.jacob at caviumnetworks.com
Mon Jan 8 12:23:14 CET 2018


-----Original Message-----
> Date: Mon, 8 Jan 2018 11:19:57 +0000
> From: "Liang, Ma" <liang.j.ma at intel.com>
> To: Jerin Jacob <jerin.jacob at caviumnetworks.com>
> CC: Sean Harte <seanbh at gmail.com>, dev at dpdk.org,
>  harry.van.haaren at intel.com, Bruce Richardson <bruce.richardson at intel.com>,
>  deepak.k.jain at intel.com, john.geary at intel.com, "Mccarthy, Peter"
>  <peter.mccarthy at intel.com>
> Subject: Re: [PATCH v4 1/8] event/opdl: add the opdl ring infrastructure
>  library
> User-Agent: Mutt/1.9.1 (2017-09-22)
> 
> On 08 Jan 12:16, Jerin Jacob wrote:
> > -----Original Message-----
> > > Date: Fri, 22 Dec 2017 16:02:42 +0000
> > > From: Sean Harte <seanbh at gmail.com>
> > > To: Liang Ma <liang.j.ma at intel.com>
> > > Cc: jerin.jacob at caviumnetworks.com, dev at dpdk.org,
> > >  harry.van.haaren at intel.com, Bruce Richardson <bruce.richardson at intel.com>,
> > >  deepak.k.jain at intel.com, john.geary at intel.com, "Mccarthy, Peter"
> > >  <peter.mccarthy at intel.com>
> > > Subject: Re: [PATCH v4 1/8] event/opdl: add the opdl ring infrastructure
> > >  library
> > > 
> > > On 22 December 2017 at 11:23, Liang Ma <liang.j.ma at intel.com> wrote:
> > > >
> > > > OPDL ring is the core infrastructure of OPDL PMD. OPDL ring library
> > > > provide the core data structure and core helper function set. The Ring
> > > > implements a single ring multi-port/stage pipelined packet distribution
> > > > mechanism. This mechanism has the following characteristics:
> > > >
> > > > • No multiple queue cost, therefore, latency is significant reduced.
> > > > • Fixed dependencies between queue/ports is more suitable for complex.
> > > >   fixed pipelines of stateless packet processing (static pipeline).
> > > > • Has decentralized distribution (no scheduling core).
> > > > • Packets remain in order (no reorder core(s)).
> > > > * Update build system to enable compilation.
> > > >
> > > > Signed-off-by: Liang Ma <liang.j.ma at intel.com>
> > > > Signed-off-by: Peter Mccarthy <peter.mccarthy at intel.com>
> > > > ---
> > > >  config/common_base                                |    6 +
> > > >  drivers/event/Makefile                            |    1 +
> > > >  drivers/event/opdl/Makefile                       |   62 +
> > > >  drivers/event/opdl/opdl_log.h                     |   59 +
> > > >  drivers/event/opdl/opdl_ring.c                    | 1252 +++++++++++++++++++++
> > > >  drivers/event/opdl/opdl_ring.h                    |  628 +++++++++++
> > > >  drivers/event/opdl/rte_pmd_evdev_opdl_version.map |    3 +
> > > >  mk/rte.app.mk                                     |    1 +
> > > >  mk/toolchain/gcc/rte.toolchain-compat.mk          |    6 +
> > > >  mk/toolchain/icc/rte.toolchain-compat.mk          |    6 +
> > > >  10 files changed, 2024 insertions(+)
> > > >  create mode 100644 drivers/event/opdl/Makefile
> > > >  create mode 100644 drivers/event/opdl/opdl_log.h
> > > >  create mode 100644 drivers/event/opdl/opdl_ring.c
> > > >  create mode 100644 drivers/event/opdl/opdl_ring.h
> > > >  create mode 100644 drivers/event/opdl/rte_pmd_evdev_opdl_version.map
> > > 
> > > [...]
> > > 
> > > Reviewed-by: Seán Harte <seanbh at gmail.com>
> > 
> > I think, the series is not addressed all the v3 comments. I think, the
> > missing ones are
> > 
> > 1) Use dynamic logging
> dynamic logging is added in second patch, the first one is not the entry 
> of the PMD. Please ref to the opdl_evdev.c  opdl_log.h

OK. Please remove the CONFIG_RTE_LIBRTE_PMD_OPDL_EVENTDEV_DEBUG option then

> 
> > 2) Split the patches based on eventdev ops:
> > example:
> > See the example from latest dpaa eventdev driver:
> > http://dpdk.org/dev/patchwork/project/dpdk/list/?submitter=Sunil
> > 3) Fix check-patch and check-git-log.sh errors.
> > 
> > Wrong headline format:
> > 	doc:update 18.02 release notes
> > Wrong headline prefix:
> > 	eventdev/opdl: opdl eventdev pmd unit test function
> > 	event/*: apply the three new capability flags for
> > sw/dppa2/octeontx
> > Wrong headline lowercase:
> > 	event/opdl: add the opdl pmd main body and helper function
> > 	eventdev/opdl: opdl eventdev pmd unit test function
> > 	event/*: apply the three new capability flags for
> > sw/dppa2/octeontx
> > 	maintainers: add the opdl pmd maintainer information
> > 	doc: add eventdev opdl pmd docuement
> > Headline too long:
> > 	event/*: apply the three new capability flags for
> > sw/dppa2/octeontx
> > 
> > ### event/opdl: add the opdl ring infrastructure library
> > 
> > WARNING:LONG_LINE: line over 80 characters
> > #451: FILE: drivers/event/opdl/opdl_ring.c:260:
> > +		PMD_DRV_LOG(ERR, "%u entries is more than max (%u)", n,
> > s->num_slots);
> > 
> > WARNING:LONG_LINE: line over 80 characters
> > #1202: FILE: drivers/event/opdl/opdl_ring.c:1011:
> > +			ev_orig = (struct rte_event *)get_slot(t,
> > s->shadow_head+i);
> > 
> > WARNING:LONG_LINE: line over 80 characters
> > #1203: FILE: drivers/event/opdl/opdl_ring.c:1012:
> > +			if ((ev_orig->flow_id%s->nb_instance) ==
> > s->instance_id) {
> > 
> > WARNING:LONG_LINE: line over 80 characters
> > #1206: FILE: drivers/event/opdl/opdl_ring.c:1015:
> > +					if
> > ((ev_orig->event&OPDL_EVENT_MASK) != ev_temp) {
> > 
> > total: 0 errors, 4 warnings, 2049 lines checked
> > 
> > ### event/opdl: add the opdl pmd main body and helper function
> > 
> > WARNING:LONG_LINE: line over 80 characters
> > #1489: FILE: drivers/event/opdl/opdl_evdev_init.c:301:
> > +		opdl_ring_cas_slot(p->enq_stage_inst, &ev[i], i,
> > p->atomic_claim);
> > 
> > WARNING:LONG_LINE: line over 80 characters
> > #2027: FILE: drivers/event/opdl/opdl_evdev_init.c:839:
> > +
> > opdl_pmd_dev_id(port->opdl),
> > 
> > WARNING:LONG_LINE: line over 80 characters
> > #2056: FILE: drivers/event/opdl/opdl_evdev_init.c:868:
> > +
> > opdl_pmd_dev_id(port->opdl),
> > 
> > total: 0 errors, 3 warnings, 2309 lines checked
> > 
> > ### eventdev/opdl: opdl eventdev pmd unit test function
> > 
> > WARNING:LONG_LINE: line over 80 characters
> > #247: FILE: drivers/event/opdl/opdl_test.c:189:
> > +			PMD_DRV_LOG(ERR, "%d: error creating qid %d\n ",
> > __LINE__, i);
> > 
> > WARNING:LONG_LINE: line over 80 characters
> > #314: FILE: drivers/event/opdl/opdl_test.c:256:
> > +			PMD_DRV_LOG(ERR, "%d: error mapping lb qid\n",
> > __LINE__);
> > 
> > WARNING:LONG_LINE: line over 80 characters
> > #451: FILE: drivers/event/opdl/opdl_test.c:393:
> > +			PMD_DRV_LOG(ERR, "%d: error mapping lb qid\n",
> > __LINE__);
> > 
> > WARNING:LONG_LINE: line over 80 characters
> > #505: FILE: drivers/event/opdl/opdl_test.c:447:
> > +				PMD_DRV_LOG(ERR, "%d: deq none zero
> > !\n", __LINE__);
> > 
> > total: 0 errors, 4 warnings, 1102 lines checked
> > 
> > 


More information about the dev mailing list