From: Yunjian Wang <wangyunj...@huawei.com>

We should return an error value, when the callback is already exist.

Fixes: a753e53d517b ("eal: add device event monitor framework")
Cc: sta...@dpdk.org

Signed-off-by: Yunjian Wang <wangyunj...@huawei.com>
Suggested-by: David Marchand <david.march...@6wind.com>
---
 lib/librte_eal/common/eal_common_dev.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/lib/librte_eal/common/eal_common_dev.c 
b/lib/librte_eal/common/eal_common_dev.c
index d990bfd20d..8a3bd3100a 100644
--- a/lib/librte_eal/common/eal_common_dev.c
+++ b/lib/librte_eal/common/eal_common_dev.c
@@ -480,7 +480,9 @@ rte_dev_event_callback_register(const char *device_name,
                RTE_LOG(ERR, EAL,
                        "The callback is already exist, no need "
                        "to register again.\n");
+               event_cb = NULL;
                ret = -EEXIST;
+               goto error;
        }
 
        rte_spinlock_unlock(&dev_event_lock);
-- 
2.23.0

Reply via email to