[dpdk-dev] [PATCH] eal: use eal abstraction for defining constructors
David Marchand
david.marchand at redhat.com
Mon Mar 18 08:54:44 CET 2019
On Mon, Mar 18, 2019 at 5:16 AM Jerin Jacob Kollanukkaran <
jerinj at marvell.com> wrote:
> From: Jerin Jacob <jerinj at marvell.com>
>
> Use eal's RTE_INIT abstraction for defining constructors.
>
> Signed-off-by: Jerin Jacob <jerinj at marvell.com>
> ---
> app/test-bbdev/main.h | 3 +--
> app/test/resource.h | 2 +-
> app/test/test.h | 3 +--
> lib/librte_mempool/rte_mempool.h | 7 +++----
> 4 files changed, 6 insertions(+), 9 deletions(-)
>
> diff --git a/app/test-bbdev/main.h b/app/test-bbdev/main.h
> index 20a55efca..2bbe1b822 100644
> --- a/app/test-bbdev/main.h
> +++ b/app/test-bbdev/main.h
> @@ -103,8 +103,7 @@ void add_test_command(struct test_command *t);
> .command = RTE_STR(name), \
> .callback = test_func_##name, \
> }; \
> - static void __attribute__((constructor, used)) \
> - test_register_##name(void) \
> + RTE_INIT(test_register_##name) \
> { \
> add_test_command(&test_struct_##name); \
> }
> diff --git a/app/test/resource.h b/app/test/resource.h
> index 223fa22ae..c75ebd4b5 100644
> --- a/app/test/resource.h
> +++ b/app/test/resource.h
> @@ -98,7 +98,7 @@ static struct resource linkres_ ##n = { \
> .begin = b, \
> .end = e, \
> }; \
> -static void __attribute__((constructor, used)) resinitfn_ ##n(void) \
> +RTE_INIT(resinitfn_ ##n) \
> { \
> resource_register(&linkres_ ##n); \
> }
> diff --git a/app/test/test.h b/app/test/test.h
> index 7c2443230..9b3846b1e 100644
> --- a/app/test/test.h
> +++ b/app/test/test.h
> @@ -177,8 +177,7 @@ void add_test_command(struct test_command *t);
> .command = RTE_STR(cmd), \
> .callback = func, \
> }; \
> - static void __attribute__((constructor, used)) \
> - test_register_##cmd(void) \
> + RTE_INIT(test_register_##cmd) \
> { \
> add_test_command(&test_struct_##cmd); \
> }
> diff --git a/lib/librte_mempool/rte_mempool.h
> b/lib/librte_mempool/rte_mempool.h
> index 7c9cd9a2f..fd19470d7 100644
> --- a/lib/librte_mempool/rte_mempool.h
> +++ b/lib/librte_mempool/rte_mempool.h
> @@ -832,10 +832,9 @@ int rte_mempool_register_ops(const struct
> rte_mempool_ops *ops);
> * Note that the rte_mempool_register_ops fails silently here when
> * more than RTE_MEMPOOL_MAX_OPS_IDX is registered.
> */
> -#define MEMPOOL_REGISTER_OPS(ops) \
> - void mp_hdlr_init_##ops(void); \
> - void __attribute__((constructor, used)) mp_hdlr_init_##ops(void)\
> - { \
> +#define MEMPOOL_REGISTER_OPS(ops) \
> + RTE_INIT(mp_hdlr_init_##ops) \
> + { \
> rte_mempool_register_ops(&ops); \
> }
>
> --
> 2.21.0
>
>
Reviewed-by: David Marchand <david.marchand at redhat.com>
--
David Marchand
More information about the dev
mailing list