On Wed, Oct 21, 2020 at 1:19 PM wangyunjian <wangyunj...@huawei.com> wrote: > > From: Yunjian Wang <wangyunj...@huawei.com> > > Fix return value, using -EAGAIN instead of 0 when the callback is busy > and using -ENOENT instead of 0 when the callback is not found. > > Fixes: a753e53d517b ("eal: add device event monitor framework") > Cc: sta...@dpdk.org
This API is experimental, its description is vague enough and we can change it in the current release. But I see this as a change in behavior for existing users, not a fix and I would not backport it. Opinions? > > Signed-off-by: Yunjian Wang <wangyunj...@huawei.com> > Acked-by: Jeff Guo <jia....@intel.com> > --- > lib/librte_eal/common/eal_common_dev.c | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > > diff --git a/lib/librte_eal/common/eal_common_dev.c > b/lib/librte_eal/common/eal_common_dev.c > index 363a2ca95e..d990bfd20d 100644 > --- a/lib/librte_eal/common/eal_common_dev.c > +++ b/lib/librte_eal/common/eal_common_dev.c > @@ -530,9 +530,15 @@ rte_dev_event_callback_unregister(const char > *device_name, > free(event_cb); > ret++; > } else { > - continue; > + ret = -EAGAIN; > + break; > } > } > + > + /* this callback is not be registered */ > + if (ret == 0) > + ret = -ENOENT; > + > rte_spinlock_unlock(&dev_event_lock); > return ret; > } > -- > 2.23.0 > -- David Marchand