30 {lacp_tx_state_transmit},
66 #define _(b, s, n) {.bit = b, .str = #s, }, 71 int e = va_arg (*args,
int);
74 if (e >= (
sizeof (lacp_tx_event_array) /
sizeof (*event_entry)))
75 s =
format (s,
"Bad event %d", e);
77 s =
format (s,
"%s", event_entry[e].str);
vlib_main_t vlib_global_main
void lacp_init_tx_machine(vlib_main_t *vm, member_if_t *mif)
vnet_main_t * vnet_get_main(void)
static f64 vlib_time_now(vlib_main_t *vm)
format_function_t format_vnet_sw_if_index_name
static lacp_fsm_machine_t lacp_tx_fsm_table[]
static u8 lacp_timer_is_running(f64 timer)
vlib_worker_thread_t * vlib_worker_threads
f64 last_lacpdu_sent_time
int lacp_tx_action_transmit(void *p1, void *p2)
#define LACP_ACTION_TRANSMIT
#define ELOG_TYPE_DECLARE(f)
void lacp_tx_debug_func(member_if_t *mif, int event, int state, lacp_fsm_state_t *transition)
void lacp_send_lacp_pdu(vlib_main_t *vm, member_if_t *mif)
#define ELOG_TRACK_DATA(em, f, track)
u32 elog_string(elog_main_t *em, char *fmt,...)
add a string to the event-log string table
static_always_inline uword os_get_thread_index(void)
static void lacp_schedule_periodic_timer(vlib_main_t *vm, member_if_t *mif)
int lacp_machine_dispatch(lacp_machine_t *machine, vlib_main_t *vm, member_if_t *mif, int event, int *state)
vl_api_dhcp_client_state_t state
static u8 * format_tx_sm_state(u8 *s, va_list *args)
static u8 * format_tx_event(u8 *s, va_list *args)