diff options
author | Damjan Marion <damarion@cisco.com> | 2021-03-06 12:26:28 +0100 |
---|---|---|
committer | Damjan Marion <damarion@cisco.com> | 2021-03-26 16:33:42 +0100 |
commit | fd8deb48c7ad63b47c5d7465ceefcadef0316f93 (patch) | |
tree | 3e5f319c7c57f526a6e571fd96847563bedf2706 /src/vlib/cli.h | |
parent | f553a2cbbb8cca84ebf033335ebd2cd26dc19d69 (diff) |
vlib: split vlib_main_t into global and per-thread
Type: refactor
Change-Id: I8b273bc3bf16aa360f031f1b2692f766e5fc4613
Signed-off-by: Damjan Marion <damarion@cisco.com>
Diffstat (limited to 'src/vlib/cli.h')
-rw-r--r-- | src/vlib/cli.h | 42 |
1 files changed, 21 insertions, 21 deletions
diff --git a/src/vlib/cli.h b/src/vlib/cli.h index c31236f8ab9..83b4eab1851 100644 --- a/src/vlib/cli.h +++ b/src/vlib/cli.h @@ -160,27 +160,27 @@ typedef struct vlib_cli_main_t } vlib_cli_main_t; #ifndef CLIB_MARCH_VARIANT -#define VLIB_CLI_COMMAND(x,...) \ - __VA_ARGS__ vlib_cli_command_t x; \ -static void __vlib_cli_command_registration_##x (void) \ - __attribute__((__constructor__)) ; \ -static void __vlib_cli_command_registration_##x (void) \ -{ \ - vlib_main_t * vm = vlib_get_main(); \ - vlib_cli_main_t *cm = &vm->cli_main; \ - x.next_cli_command = cm->cli_command_registrations; \ - cm->cli_command_registrations = &x; \ -} \ -static void __vlib_cli_command_unregistration_##x (void) \ - __attribute__((__destructor__)) ; \ -static void __vlib_cli_command_unregistration_##x (void) \ -{ \ - vlib_main_t * vm = vlib_get_main(); \ - vlib_cli_main_t *cm = &vm->cli_main; \ - VLIB_REMOVE_FROM_LINKED_LIST (cm->cli_command_registrations, &x, \ - next_cli_command); \ -} \ -__VA_ARGS__ vlib_cli_command_t x +#define VLIB_CLI_COMMAND(x, ...) \ + __VA_ARGS__ vlib_cli_command_t x; \ + static void __vlib_cli_command_registration_##x (void) \ + __attribute__ ((__constructor__)); \ + static void __vlib_cli_command_registration_##x (void) \ + { \ + vlib_global_main_t *vgm = vlib_get_global_main (); \ + vlib_cli_main_t *cm = &vgm->cli_main; \ + x.next_cli_command = cm->cli_command_registrations; \ + cm->cli_command_registrations = &x; \ + } \ + static void __vlib_cli_command_unregistration_##x (void) \ + __attribute__ ((__destructor__)); \ + static void __vlib_cli_command_unregistration_##x (void) \ + { \ + vlib_global_main_t *vgm = vlib_get_global_main (); \ + vlib_cli_main_t *cm = &vgm->cli_main; \ + VLIB_REMOVE_FROM_LINKED_LIST (cm->cli_command_registrations, &x, \ + next_cli_command); \ + } \ + __VA_ARGS__ vlib_cli_command_t x #else /* create unused pointer to silence compiler warnings and get whole function optimized out */ |