-----Original Message----- > Date: Fri, 2 Feb 2018 10:04:20 +0000 > From: "Rao, Nikhil" <nikhil....@intel.com> > To: "Varghese, Vipin" <vipin.vargh...@intel.com>, Jerin Jacob > <jerin.ja...@caviumnetworks.com> > CC: "dev@dpdk.org" <dev@dpdk.org>, "Jacob, Jerin" > <jerin.jacobkollanukka...@cavium.com>, "Van Haaren, Harry" > <harry.van.haa...@intel.com>, Hemant Agrawal <hemant.agra...@nxp.com>, > "Jain, Deepak K" <deepak.k.j...@intel.com> > Subject: RE: [PATCH] event/rx_adapter: fix ignore return of event start > > > > -----Original Message----- > > From: Varghese, Vipin > > Sent: Friday, February 2, 2018 1:39 PM > > To: Jerin Jacob <jerin.ja...@caviumnetworks.com>; Rao, Nikhil > > <nikhil....@intel.com> > > Cc: dev@dpdk.org; Jacob, Jerin <jerin.jacobkollanukka...@cavium.com>; Van > > Haaren, Harry <harry.van.haa...@intel.com>; Hemant Agrawal > > <hemant.agra...@nxp.com>; Jain, Deepak K <deepak.k.j...@intel.com> > > Subject: RE: [PATCH] event/rx_adapter: fix ignore return of event start > > > > > > > > > -----Original Message----- > > > From: Jerin Jacob [mailto:jerin.ja...@caviumnetworks.com] > > > Sent: Wednesday, January 31, 2018 6:54 AM > > > To: Rao, Nikhil <nikhil....@intel.com> > > > Cc: Varghese, Vipin <vipin.vargh...@intel.com>; dev@dpdk.org; Jacob, > > > Jerin <jerin.jacobkollanukka...@cavium.com>; Van Haaren, Harry > > > <harry.van.haa...@intel.com>; Hemant Agrawal > > <hemant.agra...@nxp.com>; > > > Jain, Deepak K <deepak.k.j...@intel.com> > > > Subject: Re: [PATCH] event/rx_adapter: fix ignore return of event > > > start > > > > > > -----Original Message----- > > > > > > > > > > > > Adding eventdev PMD folks for their suggestions on how to handle the > > > > return > > > value from rte_event_dev_start() below. > > > > > > > > > -----Original Message----- > > > > > From: Varghese, Vipin > > > > > Sent: Wednesday, January 31, 2018 4:26 AM > > > > > To: dev@dpdk.org; Rao, Nikhil <nikhil....@intel.com> > > > > > Cc: Jain, Deepak K <deepak.k.j...@intel.com>; Varghese, Vipin > > > > > <vipin.vargh...@intel.com> > > > > > Subject: [PATCH] event/rx_adapter: fix ignore return of event > > > > > start > > > > > > > > > > Capture the return value for rte_event_dev_start. Return the > > > > > result back to user. > > > > > > > > > > Coverity issue: 257000 > > > > > Fixes: 9c38b704d280 ("eventdev: add eth Rx adapter > > > > > implementation") > > > > > Cc: nikhil....@intel.com > > > > > > > > > > Signed-off-by: Vipin Varghese <vipin.vargh...@intel.com> > > > > > --- > > > > > lib/librte_eventdev/rte_event_eth_rx_adapter.c | 4 ++-- > > > > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > > > > > > > diff --git a/lib/librte_eventdev/rte_event_eth_rx_adapter.c > > > > > b/lib/librte_eventdev/rte_event_eth_rx_adapter.c > > > > > index 90106e6..a818bef 100644 > > > > > --- a/lib/librte_eventdev/rte_event_eth_rx_adapter.c > > > > > +++ b/lib/librte_eventdev/rte_event_eth_rx_adapter.c > > > > > @@ -603,7 +603,7 @@ static uint16_t gcd_u16(uint16_t a, uint16_t b) > > > > > RTE_EDEV_LOG_ERR("failed to configure event dev %u\n", > > > > > dev_id); > > > > > if (started) > > > > > - rte_event_dev_start(dev_id); > > > > > + ret = rte_event_dev_start(dev_id); > > > > > > > > Currently the a non-zero return value at this point signifies an > > > > error returned > > > from rte_event_dev_configure(), so I suggest that the return value is > > > typecasted to void. > > > > > > If I understand it correctly, Any one of the failure(configure() or > > > start()) should result in bad state. Right? > > > i.e If some reason PMD is not able to start() even after failure > > > configuration() would result in bad state. > > > If so, one option could be combine the error like ret |= operation or > > > create a new logical error in Rx adapter which denotes this new error. > > > > > > > So do we agree to ACK these changes to get the code fix to the mainline? > > Sorry, if my original email wasn't clear, if rte_event_dev_configure() > returns an error and rte_eventdev_start() returns success that would be a > problem, i.e., the fix is incorrect. > > Of the 2 options suggested by Jerin - Since ret is not a bitmask ret |= > wouldn't work, if I understand the option correctly . A new error would work. > > How about EIO ? and we also update the documentation to indicate that the > event device would be in a stopped state if the return code is EIO.
+1 for new error. You may consider EBUSY or EINPROGRESS also.No strong opinion for the name.