int
lacp_mux_action_detached (void *p1, void *p2)
{
- vlib_main_t *vm = (vlib_main_t *) p1;
- slave_if_t *sif = (slave_if_t *) p2;
- lacp_main_t *lm = &lacp_main;
+ vlib_main_t *vm = p1;
+ slave_if_t *sif = p2;
lacp_detach_mux_from_aggregator (vm, sif);
sif->actor.state &= ~LACP_STATE_COLLECTING;
bond_disable_collecting_distributing (vm, sif);
sif->actor.state &= ~LACP_STATE_DISTRIBUTING;
sif->ntt = 1;
- lacp_start_periodic_timer (lm->vlib_main, sif, 0);
+ lacp_start_periodic_timer (vm, sif, 0);
if (sif->selected == LACP_PORT_SELECTED)
lacp_machine_dispatch (&lacp_mux_machine, vm, sif,
int
lacp_mux_action_attached (void *p1, void *p2)
{
- vlib_main_t *vm = (vlib_main_t *) p1;
- slave_if_t *sif = (slave_if_t *) p2;
- lacp_main_t *lm = &lacp_main;
+ vlib_main_t *vm = p1;
+ slave_if_t *sif = p2;
lacp_attach_mux_to_aggregator (vm, sif);
sif->actor.state &= ~LACP_STATE_COLLECTING;
bond_disable_collecting_distributing (vm, sif);
sif->actor.state &= ~LACP_STATE_DISTRIBUTING;
sif->ntt = 1;
- lacp_start_periodic_timer (lm->vlib_main, sif, 0);
+ lacp_start_periodic_timer (vm, sif, 0);
if ((sif->selected == LACP_PORT_UNSELECTED) ||
(sif->selected == LACP_PORT_STANDBY))
int
lacp_mux_action_waiting (void *p1, void *p2)
{
- vlib_main_t *vm = (vlib_main_t *) p1;
- slave_if_t *sif = (slave_if_t *) p2;
- lacp_main_t *lm = &lacp_main;
+ vlib_main_t *vm = p1;
+ slave_if_t *sif = p2;
if (!lacp_timer_is_running (sif->wait_while_timer))
- lacp_start_wait_while_timer (lm->vlib_main, sif,
- LACP_AGGREGATE_WAIT_TIME);
+ lacp_start_wait_while_timer (vm, sif, LACP_AGGREGATE_WAIT_TIME);
if ((sif->selected == LACP_PORT_SELECTED) && sif->ready)
lacp_machine_dispatch (&lacp_mux_machine, vm, sif,
int
lacp_mux_action_collecting_distributing (void *p1, void *p2)
{
- vlib_main_t *vm = (vlib_main_t *) p1;
- slave_if_t *sif = (slave_if_t *) p2;
- lacp_main_t *lm = &lacp_main;
+ vlib_main_t *vm = p1;
+ slave_if_t *sif = p2;
sif->actor.state |= LACP_STATE_SYNCHRONIZATION | LACP_STATE_COLLECTING |
LACP_STATE_DISTRIBUTING;
bond_enable_collecting_distributing (vm, sif);
sif->ntt = 1;
- lacp_start_periodic_timer (lm->vlib_main, sif, 0);
+ lacp_start_periodic_timer (vm, sif, 0);
if ((sif->selected == LACP_PORT_UNSELECTED) ||
(sif->selected == LACP_PORT_STANDBY) ||
!(sif->partner.state & LACP_STATE_SYNCHRONIZATION))
{.str = NULL}
};
int e = va_arg (*args, int);
- lacp_event_struct *event_entry =
- (lacp_event_struct *) & lacp_mux_event_array;
+ lacp_event_struct *event_entry = lacp_mux_event_array;
if (e >= (sizeof (lacp_mux_event_array) / sizeof (*event_entry)))
s = format (s, "Bad event %d", e);
lacp_mux_debug_func (slave_if_t * sif, int event, int state,
lacp_fsm_state_t * transition)
{
- clib_warning ("%U-MUX: event %U, old state %U, new state %U",
- format_vnet_sw_if_index_name, vnet_get_main (),
- sif->sw_if_index, format_mux_event,
- event, format_mux_sm_state, state, format_mux_sm_state,
- transition->next_state);
+ vlib_worker_thread_t *w = vlib_worker_threads + os_get_thread_index ();
+ /* *INDENT-OFF* */
+ ELOG_TYPE_DECLARE (e) =
+ {
+ .format = "%s",
+ .format_args = "T4",
+ };
+ /* *INDENT-ON* */
+ struct
+ {
+ u32 event;
+ } *ed = 0;
+
+ ed = ELOG_TRACK_DATA (&vlib_global_main.elog_main, e, w->elog_track);
+ ed->event =
+ elog_string (&vlib_global_main.elog_main, "%U-MUX: %U, %U->%U%c",
+ format_vnet_sw_if_index_name, vnet_get_main (),
+ sif->sw_if_index, format_mux_event, event,
+ format_mux_sm_state, state, format_mux_sm_state,
+ transition->next_state, 0);
}
void