> From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Thomas Monjalon > Sent: Tuesday, February 13, 2018 1:51 PM > To: Burakov, Anatoly <anatoly.bura...@intel.com> > Cc: email@example.com; Tan, Jianfeng <jianfeng....@intel.com> > Subject: Re: [dpdk-dev] [PATCH] eal: fix rte_errno values for IPC API > > > > rte_errno values should not be negative. > > > > > > Fixes: bacaa2754017 ("eal: add channel for multi-process communication") > > > Fixes: 783b6e54971d ("eal: add synchronous multi-process communication") > > > Cc: jianfeng....@intel.com > > > Signed-off-by: Anatoly Burakov <anatoly.bura...@intel.com> > > > > Reviewed-by: Jianfeng Tan <jianfeng....@intel.com> > > > > Thanks for fixing this. > > Applied, thanks > > There are a lot of similar issues: > > git grep -l 'rte_errno = -E' | sed 's,[^/]*$,,' | sort -u > > drivers/event/opdl/ > drivers/event/sw/ <snip> > lib/librte_eventdev/
I just checked the eventdev.h port_link() docs, which indicate negative return values. Perhaps the header is wrong too - but the PMDs adhere to the library header in this case. Is there a requirement for rte_errno to be positive? It looks to be declared as per-lcore signed int in rte_errno.h +20 Either-way, if we want to change the PMDs, we should change the Eventdev APIs, which means API breakage, and application changes to handle changed return values. Sound like more work than it is worth it to me?