Lines Matching refs:fib_node
392 prestera_fib_node_util_is_neighbour(struct prestera_fib_node *fib_node)
394 if (fib_node->info.type != PRESTERA_FIB_TYPE_UC_NH)
397 if (fib_node->info.nh_grp->nh_neigh_head[1].neigh)
400 if (!fib_node->info.nh_grp->nh_neigh_head[0].neigh)
403 if (memcmp(&fib_node->info.nh_grp->nh_neigh_head[0].neigh->key.addr,
404 &fib_node->key.addr, sizeof(struct prestera_ip_addr)))
731 struct prestera_fib_node *fib_node;
750 fib_node = prestera_fib_node_find(sw, &fib_key);
752 if (!enabled && fib_node) {
753 if (prestera_fib_node_util_is_neighbour(fib_node))
754 prestera_fib_node_destroy(sw, fib_node);
759 if (enabled && !fib_node) {
763 fib_node = prestera_fib_node_create(sw, &fib_key,
766 if (!fib_node)
933 struct prestera_fib_node *fib_node;
935 fib_node = prestera_fib_node_find(sw, &fc->lpm_info.fib_key);
936 if (fib_node)
937 prestera_fib_node_destroy(sw, fib_node);
942 fib_node = prestera_fib_node_create(sw, &fc->lpm_info.fib_key,
946 if (!fib_node) {
947 dev_err(sw->dev->dev, "fib_node=NULL %pI4n/%d kern_tb_id = %d",