mp->flags is int and mempool API updates unsigned int
value in 'flags', so fix the 'flags' data type.

Patch also does mp->flags cleanup like:
* Remove redundant 'flags' API description from
  - __rte_mempool_generic_put
  - __rte_mempool_generic_get

* Remove unused 'flags' param from
  - rte_mempool_generic_put
  - rte_mempool_generic_get

* Fix mempool var data types int mempool.c
  - mz_flags is int, Change it to unsigned int.

Fixes: af75078fec ("first public release")
Fixes: 454a0a7009 ("mempool: use cache in single producer or consumer mode")
Fixes: d6f78df6fe ("mempool: use bit flags for multi consumers and producers")
Fixes: d1d914ebbc ("mempool: allocate in several memory chunks by default")

Signed-off-by: Santosh Shukla <santosh.shu...@caviumnetworks.com>
---
- Changes are based on per deprecation notice [1]
[1] http://dpdk.org/dev/patchwork/patch/26872/

 lib/librte_mempool/rte_mempool.c |  4 ++--
 lib/librte_mempool/rte_mempool.h | 23 +++++------------------
 test/test/test_mempool.c         | 18 +++++++++---------
 test/test/test_mempool_perf.c    |  4 ++--
 4 files changed, 18 insertions(+), 31 deletions(-)

diff --git a/lib/librte_mempool/rte_mempool.c b/lib/librte_mempool/rte_mempool.c
index 6fc3c9c7c..237665c65 100644
--- a/lib/librte_mempool/rte_mempool.c
+++ b/lib/librte_mempool/rte_mempool.c
@@ -515,7 +515,7 @@ rte_mempool_populate_virt(struct rte_mempool *mp, char 
*addr,
 int
 rte_mempool_populate_default(struct rte_mempool *mp)
 {
-       int mz_flags = RTE_MEMZONE_1GB|RTE_MEMZONE_SIZE_HINT_ONLY;
+       unsigned int mz_flags = RTE_MEMZONE_1GB|RTE_MEMZONE_SIZE_HINT_ONLY;
        char mz_name[RTE_MEMZONE_NAMESIZE];
        const struct rte_memzone *mz;
        size_t size, total_elt_sz, align, pg_sz, pg_shift;
@@ -742,7 +742,7 @@ rte_mempool_create_empty(const char *name, unsigned n, 
unsigned elt_size,
        struct rte_tailq_entry *te = NULL;
        const struct rte_memzone *mz = NULL;
        size_t mempool_size;
-       int mz_flags = RTE_MEMZONE_1GB|RTE_MEMZONE_SIZE_HINT_ONLY;
+       unsigned int mz_flags = RTE_MEMZONE_1GB|RTE_MEMZONE_SIZE_HINT_ONLY;
        struct rte_mempool_objsz objsz;
        unsigned lcore_id;
        int ret;
diff --git a/lib/librte_mempool/rte_mempool.h b/lib/librte_mempool/rte_mempool.h
index 76b5b3b15..bd7be2319 100644
--- a/lib/librte_mempool/rte_mempool.h
+++ b/lib/librte_mempool/rte_mempool.h
@@ -226,7 +226,7 @@ struct rte_mempool {
        };
        void *pool_config;               /**< optional args for ops alloc. */
        const struct rte_memzone *mz;    /**< Memzone where pool is alloc'd. */
-       int flags;                       /**< Flags of the mempool. */
+       unsigned int flags;              /**< Flags of the mempool. */
        int socket_id;                   /**< Socket id passed at create. */
        uint32_t size;                   /**< Max size of the mempool. */
        uint32_t cache_size;
@@ -1034,9 +1034,6 @@ rte_mempool_default_cache(struct rte_mempool *mp, 
unsigned lcore_id)
  *   positive.
  * @param cache
  *   A pointer to a mempool cache structure. May be NULL if not needed.
- * @param flags
- *   The flags used for the mempool creation.
- *   Single-producer (MEMPOOL_F_SP_PUT flag) or multi-producers.
  */
 static __rte_always_inline void
 __mempool_generic_put(struct rte_mempool *mp, void * const *obj_table,
@@ -1096,14 +1093,10 @@ __mempool_generic_put(struct rte_mempool *mp, void * 
const *obj_table,
  *   The number of objects to add in the mempool from the obj_table.
  * @param cache
  *   A pointer to a mempool cache structure. May be NULL if not needed.
- * @param flags
- *   The flags used for the mempool creation.
- *   Single-producer (MEMPOOL_F_SP_PUT flag) or multi-producers.
  */
 static __rte_always_inline void
 rte_mempool_generic_put(struct rte_mempool *mp, void * const *obj_table,
-                       unsigned n, struct rte_mempool_cache *cache,
-                       __rte_unused int flags)
+                       unsigned n, struct rte_mempool_cache *cache)
 {
        __mempool_check_cookies(mp, obj_table, n, 0);
        __mempool_generic_put(mp, obj_table, n, cache);
@@ -1129,7 +1122,7 @@ rte_mempool_put_bulk(struct rte_mempool *mp, void * const 
*obj_table,
 {
        struct rte_mempool_cache *cache;
        cache = rte_mempool_default_cache(mp, rte_lcore_id());
-       rte_mempool_generic_put(mp, obj_table, n, cache, mp->flags);
+       rte_mempool_generic_put(mp, obj_table, n, cache);
 }
 
 /**
@@ -1160,9 +1153,6 @@ rte_mempool_put(struct rte_mempool *mp, void *obj)
  *   The number of objects to get, must be strictly positive.
  * @param cache
  *   A pointer to a mempool cache structure. May be NULL if not needed.
- * @param flags
- *   The flags used for the mempool creation.
- *   Single-consumer (MEMPOOL_F_SC_GET flag) or multi-consumers.
  * @return
  *   - >=0: Success; number of objects supplied.
  *   - <0: Error; code of ring dequeue function.
@@ -1241,16 +1231,13 @@ __mempool_generic_get(struct rte_mempool *mp, void 
**obj_table,
  *   The number of objects to get from mempool to obj_table.
  * @param cache
  *   A pointer to a mempool cache structure. May be NULL if not needed.
- * @param flags
- *   The flags used for the mempool creation.
- *   Single-consumer (MEMPOOL_F_SC_GET flag) or multi-consumers.
  * @return
  *   - 0: Success; objects taken.
  *   - -ENOENT: Not enough entries in the mempool; no object is retrieved.
  */
 static __rte_always_inline int
 rte_mempool_generic_get(struct rte_mempool *mp, void **obj_table, unsigned n,
-                       struct rte_mempool_cache *cache, __rte_unused int flags)
+                       struct rte_mempool_cache *cache)
 {
        int ret;
        ret = __mempool_generic_get(mp, obj_table, n, cache);
@@ -1286,7 +1273,7 @@ rte_mempool_get_bulk(struct rte_mempool *mp, void 
**obj_table, unsigned n)
 {
        struct rte_mempool_cache *cache;
        cache = rte_mempool_default_cache(mp, rte_lcore_id());
-       return rte_mempool_generic_get(mp, obj_table, n, cache, mp->flags);
+       return rte_mempool_generic_get(mp, obj_table, n, cache);
 }
 
 /**
diff --git a/test/test/test_mempool.c b/test/test/test_mempool.c
index 0a4423954..47dc3ac5f 100644
--- a/test/test/test_mempool.c
+++ b/test/test/test_mempool.c
@@ -129,7 +129,7 @@ test_mempool_basic(struct rte_mempool *mp, int 
use_external_cache)
        rte_mempool_dump(stdout, mp);
 
        printf("get an object\n");
-       if (rte_mempool_generic_get(mp, &obj, 1, cache, 0) < 0)
+       if (rte_mempool_generic_get(mp, &obj, 1, cache) < 0)
                GOTO_ERR(ret, out);
        rte_mempool_dump(stdout, mp);
 
@@ -152,21 +152,21 @@ test_mempool_basic(struct rte_mempool *mp, int 
use_external_cache)
 #endif
 
        printf("put the object back\n");
-       rte_mempool_generic_put(mp, &obj, 1, cache, 0);
+       rte_mempool_generic_put(mp, &obj, 1, cache);
        rte_mempool_dump(stdout, mp);
 
        printf("get 2 objects\n");
-       if (rte_mempool_generic_get(mp, &obj, 1, cache, 0) < 0)
+       if (rte_mempool_generic_get(mp, &obj, 1, cache) < 0)
                GOTO_ERR(ret, out);
-       if (rte_mempool_generic_get(mp, &obj2, 1, cache, 0) < 0) {
-               rte_mempool_generic_put(mp, &obj, 1, cache, 0);
+       if (rte_mempool_generic_get(mp, &obj2, 1, cache) < 0) {
+               rte_mempool_generic_put(mp, &obj, 1, cache);
                GOTO_ERR(ret, out);
        }
        rte_mempool_dump(stdout, mp);
 
        printf("put the objects back\n");
-       rte_mempool_generic_put(mp, &obj, 1, cache, 0);
-       rte_mempool_generic_put(mp, &obj2, 1, cache, 0);
+       rte_mempool_generic_put(mp, &obj, 1, cache);
+       rte_mempool_generic_put(mp, &obj2, 1, cache);
        rte_mempool_dump(stdout, mp);
 
        /*
@@ -178,7 +178,7 @@ test_mempool_basic(struct rte_mempool *mp, int 
use_external_cache)
                GOTO_ERR(ret, out);
 
        for (i = 0; i < MEMPOOL_SIZE; i++) {
-               if (rte_mempool_generic_get(mp, &objtable[i], 1, cache, 0) < 0)
+               if (rte_mempool_generic_get(mp, &objtable[i], 1, cache) < 0)
                        break;
        }
 
@@ -200,7 +200,7 @@ test_mempool_basic(struct rte_mempool *mp, int 
use_external_cache)
                                ret = -1;
                }
 
-               rte_mempool_generic_put(mp, &objtable[i], 1, cache, 0);
+               rte_mempool_generic_put(mp, &objtable[i], 1, cache);
        }
 
        free(objtable);
diff --git a/test/test/test_mempool_perf.c b/test/test/test_mempool_perf.c
index 07b28c066..3b8f7de7c 100644
--- a/test/test/test_mempool_perf.c
+++ b/test/test/test_mempool_perf.c
@@ -186,7 +186,7 @@ per_lcore_mempool_test(void *arg)
                                ret = rte_mempool_generic_get(mp,
                                                              &obj_table[idx],
                                                              n_get_bulk,
-                                                             cache, 0);
+                                                             cache);
                                if (unlikely(ret < 0)) {
                                        rte_mempool_dump(stdout, mp);
                                        /* in this case, objects are lost... */
@@ -200,7 +200,7 @@ per_lcore_mempool_test(void *arg)
                        while (idx < n_keep) {
                                rte_mempool_generic_put(mp, &obj_table[idx],
                                                        n_put_bulk,
-                                                       cache, 0);
+                                                       cache);
                                idx += n_put_bulk;
                        }
                }
-- 
2.13.0

Reply via email to