[dpdk-dev] [PATCH v4 1/6] eventdev: introduce event driven programming model
Jerin Jacob
jerin.jacob at caviumnetworks.com
Mon Jan 30 11:42:25 CET 2017
On Thu, Jan 26, 2017 at 08:39:57PM +0000, Eads, Gage wrote:
>
>
> > -----Original Message-----
> > From: Jerin Jacob [mailto:jerin.jacob at caviumnetworks.com]
> > Sent: Thursday, January 26, 2017 3:39 AM
> > To: Eads, Gage <gage.eads at intel.com>
> > Cc: Richardson, Bruce <bruce.richardson at intel.com>; 'dev at dpdk.org'
> > <dev at dpdk.org>; 'thomas.monjalon at 6wind.com'
> > <thomas.monjalon at 6wind.com>; 'hemant.agrawal at nxp.com'
> > <hemant.agrawal at nxp.com>; Van Haaren, Harry
> > <harry.van.haaren at intel.com>; McDaniel, Timothy
> > <timothy.mcdaniel at intel.com>
> > Subject: Re: [dpdk-dev] [PATCH v4 1/6] eventdev: introduce event driven
> > programming model
> >
> > Considering different implementation has different behaviors, How about
> > enumerating the overflow policy at the port configuration time? and let
> > implementation act accordingly to avoid fast-patch change in
> > application(effects in all implementation irrespective of the capability)
> >
> > possible enumerating value at the port configuration time,
> > - PANIC or similar scheme to denote it cannot proceed
> > - TAIL DROP
> > or any expected application behavior you want to add
>
> I wonder if that's necessary? Hardware behavior a) means the function will always return nb_events. If hardware drops the event(s), I assume enqueue_burst would still return nb_events and the app behaves as if all events were sent. If the enqueue fails (ret < nb_events), app software could check rte_errno and take the action it deems necessary. So all fast-path enqueue code could look like:
>
> ret = rte_event_enqueue_burst(..., nb_events);
> if (ret < nb_events) {
I was concerned about this section of the application code get bloated with
drivers specific actions. But, If we want the actions based on per event then
I think, it makes sense to update the specification with new rte_errno values
for enqueue.
> ....
> }
More information about the dev
mailing list