Lines Matching refs:fib_event
880 static void nsim_fib_event(struct nsim_fib_event *fib_event) in nsim_fib_event() argument
882 switch (fib_event->family) { in nsim_fib_event()
884 nsim_fib4_event(fib_event->data, &fib_event->fen_info, in nsim_fib_event()
885 fib_event->event); in nsim_fib_event()
886 fib_info_put(fib_event->fen_info.fi); in nsim_fib_event()
889 nsim_fib6_event(fib_event->data, &fib_event->fib6_event, in nsim_fib_event()
890 fib_event->event); in nsim_fib_event()
891 nsim_fib6_event_fini(&fib_event->fib6_event); in nsim_fib_event()
897 struct nsim_fib_event *fib_event, in nsim_fib4_prepare_event() argument
900 struct nsim_fib_data *data = fib_event->data; in nsim_fib4_prepare_event()
907 fib_event->fen_info = *fen_info; in nsim_fib4_prepare_event()
930 fib_info_hold(fib_event->fen_info.fi); in nsim_fib4_prepare_event()
936 struct nsim_fib_event *fib_event, in nsim_fib6_prepare_event() argument
939 struct nsim_fib_data *data = fib_event->data; in nsim_fib6_prepare_event()
947 err = nsim_fib6_event_init(&fib_event->fib6_event, fen6_info); in nsim_fib6_prepare_event()
973 nsim_fib6_event_fini(&fib_event->fib6_event); in nsim_fib6_prepare_event()
981 struct nsim_fib_event *fib_event; in nsim_fib_event_schedule_work() local
990 fib_event = kzalloc(sizeof(*fib_event), GFP_ATOMIC); in nsim_fib_event_schedule_work()
991 if (!fib_event) in nsim_fib_event_schedule_work()
994 fib_event->data = data; in nsim_fib_event_schedule_work()
995 fib_event->event = event; in nsim_fib_event_schedule_work()
996 fib_event->family = info->family; in nsim_fib_event_schedule_work()
1000 err = nsim_fib4_prepare_event(info, fib_event, event); in nsim_fib_event_schedule_work()
1003 err = nsim_fib6_prepare_event(info, fib_event, event); in nsim_fib_event_schedule_work()
1012 list_add_tail(&fib_event->list, &data->fib_event_queue); in nsim_fib_event_schedule_work()
1019 kfree(fib_event); in nsim_fib_event_schedule_work()
1481 struct nsim_fib_event *fib_event, *next_fib_event; in nsim_fib_event_work() local
1490 list_for_each_entry_safe(fib_event, next_fib_event, &fib_event_queue, in nsim_fib_event_work()
1492 nsim_fib_event(fib_event); in nsim_fib_event_work()
1493 list_del(&fib_event->list); in nsim_fib_event_work()
1494 kfree(fib_event); in nsim_fib_event_work()