On Fri, Nov 19, 2021 at 09:34:08AM +0000, Ferruh Yigit wrote: > On 11/18/2021 8:19 PM, Tyler Retzlaff wrote: > > On Thu, Nov 18, 2021 at 07:28:02PM +0000, [email protected] wrote: > > > From: Elena Agostini <[email protected]> > > > > > > Signed-off-by: Elena Agostini <[email protected]> > > > --- > > > lib/gpudev/gpudev.c | 10 ++++++++++ > > > lib/gpudev/rte_gpudev.h | 2 ++ > > > 2 files changed, 12 insertions(+) > > > > > > diff --git a/lib/gpudev/gpudev.c b/lib/gpudev/gpudev.c > > > index 2b174d8bd5..97575ed979 100644 > > > --- a/lib/gpudev/gpudev.c > > > +++ b/lib/gpudev/gpudev.c > > > @@ -576,6 +576,11 @@ rte_gpu_mem_free(int16_t dev_id, void *ptr) > > > return -rte_errno; > > > } > > > + if (ptr == NULL) { > > > + rte_errno = EINVAL; > > > + return -rte_errno; > > > + } > > > > in general dpdk has real problems with how it indicates that an error > > occurred and what error occurred consistently. > > > > some api's return 0 on success > > and maybe return -errno if ! 0 > > and maybe return errno if ! 0 > > and maybe set rte_errno if ! 0 > > > > some api's return -1 on failure > > and set rte_errno if -1 > > > > some api's return < 0 on failure > > and maybe set rte_errno > > and maybe return -errno > > and maybe set rte_errno and return -rte_errno > > > > This is a generic comment, cc'ed a few more folks to make the comment more > visible. >
Yes, it's inconsistent. However, this only applies to functions which return integer values. Other functions which return pointer values are hopefully standardized to return NULL on error. [Which means any error code must be in rte_errno.] /Bruce

