Lines Matching refs:fib4_rt

278 	struct nsim_fib4_rt *fib4_rt;
280 fib4_rt = kzalloc(sizeof(*fib4_rt), GFP_KERNEL);
281 if (!fib4_rt)
284 nsim_fib_rt_init(data, &fib4_rt->common, &fen_info->dst, sizeof(u32),
287 fib4_rt->fi = fen_info->fi;
288 fib_info_hold(fib4_rt->fi);
289 fib4_rt->dscp = fen_info->dscp;
290 fib4_rt->type = fen_info->type;
292 return fib4_rt;
295 static void nsim_fib4_rt_destroy(struct nsim_fib4_rt *fib4_rt)
297 fib_info_put(fib4_rt->fi);
298 nsim_fib_rt_fini(&fib4_rt->common);
299 kfree(fib4_rt);
337 const struct nsim_fib4_rt *fib4_rt,
340 u32 *p_dst = (u32 *) fib4_rt->common.key.addr;
341 int dst_len = fib4_rt->common.key.prefix_len;
344 fri.fi = fib4_rt->fi;
345 fri.tb_id = fib4_rt->common.key.tb_id;
348 fri.dscp = fib4_rt->dscp;
349 fri.type = fib4_rt->type;
357 struct nsim_fib4_rt *fib4_rt)
363 &fib4_rt->common.ht_node,
370 nsim_fib4_rt_hw_flags_set(net, fib4_rt, true);
383 struct nsim_fib4_rt *fib4_rt,
397 &fib4_rt->common.ht_node,
403 nsim_fib4_rt_hw_flags_set(net, fib4_rt, true);
414 struct nsim_fib4_rt *fib4_rt, *fib4_rt_old;
426 fib4_rt = nsim_fib4_rt_create(data, fen_info);
427 if (!fib4_rt)
432 err = nsim_fib4_rt_add(data, fib4_rt);
434 err = nsim_fib4_rt_replace(data, fib4_rt, fib4_rt_old);
437 nsim_fib4_rt_destroy(fib4_rt);
445 struct nsim_fib4_rt *fib4_rt;
447 fib4_rt = nsim_fib4_rt_lookup(&data->fib_rt_ht, fen_info);
448 if (!fib4_rt)
451 rhashtable_remove_fast(&data->fib_rt_ht, &fib4_rt->common.ht_node,
453 nsim_fib4_rt_destroy(fib4_rt);
1053 struct nsim_fib4_rt *fib4_rt;
1055 fib4_rt = container_of(fib_rt, struct nsim_fib4_rt, common);
1056 nsim_fib4_rt_hw_flags_set(devlink_net(devlink), fib4_rt, false);
1058 nsim_fib4_rt_destroy(fib4_rt);