1 /* SPDX-License-Identifier: BSD-3-Clause
5 #ifndef _RTE_MBUF_POOL_OPS_H_
6 #define _RTE_MBUF_POOL_OPS_H_
12 * These APIs are for configuring the mbuf pool ops names to be largely used by
13 * rte_pktmbuf_pool_create(). However, this can also be used to set and inquire
14 * the best mempool ops available.
17 * @b EXPERIMENTAL: this API may change without prior notice
20 #include <rte_compat.h>
27 * Set the platform supported pktmbuf HW mempool ops name
29 * This function allow the HW to register the actively supported HW mempool
30 * ops_name. Only one HW mempool ops can be registered at any point of time.
35 * - On failure, a negative value.
37 int __rte_experimental
38 rte_mbuf_set_platform_mempool_ops(const char *ops_name);
41 * Get configured platform supported pktmbuf HW mempool ops name
43 * This function returns the platform supported mempool ops name.
46 * - On success, platform pool ops name.
49 const char * __rte_experimental
50 rte_mbuf_platform_mempool_ops(void);
53 * Set the user preferred pktmbuf mempool ops name
55 * This function can be used by the user to configure user preferred
61 * - On failure, a negative value.
63 int __rte_experimental
64 rte_mbuf_set_user_mempool_ops(const char *ops_name);
67 * Get user preferred pool ops name for mbuf
69 * This function returns the user configured mempool ops name.
72 * - On success, user pool ops name..
75 const char * __rte_experimental
76 rte_mbuf_user_mempool_ops(void);
79 * Get the best mempool ops name for pktmbuf.
81 * This function is used to determine the best options for mempool ops for
82 * pktmbuf allocations. Following are the priority order:
83 * 1. User defined, 2. Platform HW supported, 3. Compile time configured.
84 * This function is also used by the rte_pktmbuf_pool_create to get the best
88 * returns preferred mbuf pool ops name
90 const char * __rte_experimental
91 rte_mbuf_best_mempool_ops(void);
98 #endif /* _RTE_MBUF_POOL_OPS_H_ */