Three places check for the return value from __mempool_get_bulk to be zero
and then call the debug routine __mempool_check_cookies(). The test is
not required if moved into the debug routine. Minor cleanup and mostly
does not effect performance, unless the is not removed by the compiler
in the case where teh debug routine is not defined.

Signed-off-by: Keith Wiles <keith.wiles at windriver.com>
---
 lib/librte_mempool/rte_mempool.h | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/lib/librte_mempool/rte_mempool.h b/lib/librte_mempool/rte_mempool.h
index 597cf4f..154fdd4 100644
--- a/lib/librte_mempool/rte_mempool.h
+++ b/lib/librte_mempool/rte_mempool.h
@@ -325,6 +325,9 @@ static inline void __mempool_check_cookies(const struct 
rte_mempool *mp,
        void *obj;
        void **obj_table;

+       if ( n < 0 )
+               return;
+
        /* Force to drop the "const" attribute. This is done only when
         * DEBUG is enabled */
        tmp = (void *) obj_table_const;
@@ -1029,8 +1032,7 @@ rte_mempool_mc_get_bulk(struct rte_mempool *mp, void 
**obj_table, unsigned n)
 {
        int ret;
        ret = __mempool_get_bulk(mp, obj_table, n, 1);
-       if (ret == 0)
-               __mempool_check_cookies(mp, obj_table, n, 1);
+       __mempool_check_cookies(mp, obj_table, n, 1);
        return ret;
 }

@@ -1058,8 +1060,7 @@ rte_mempool_sc_get_bulk(struct rte_mempool *mp, void 
**obj_table, unsigned n)
 {
        int ret;
        ret = __mempool_get_bulk(mp, obj_table, n, 0);
-       if (ret == 0)
-               __mempool_check_cookies(mp, obj_table, n, 1);
+       __mempool_check_cookies(mp, obj_table, n, 1);
        return ret;
 }

@@ -1091,8 +1092,7 @@ rte_mempool_get_bulk(struct rte_mempool *mp, void 
**obj_table, unsigned n)
        int ret;
        ret = __mempool_get_bulk(mp, obj_table, n,
                                 !(mp->flags & MEMPOOL_F_SC_GET));
-       if (ret == 0)
-               __mempool_check_cookies(mp, obj_table, n, 1);
+       __mempool_check_cookies(mp, obj_table, n, 1);
        return ret;
 }

-- 
2.1.0

Reply via email to