Lines Matching refs:key

36 	.key_offset  = offsetof(struct prestera_fib_node, key),
43 .key_offset = offsetof(struct prestera_nh_neigh, key),
49 .key_offset = offsetof(struct prestera_nexthop_group, key),
62 static bool prestera_nh_neigh_key_is_valid(struct prestera_nh_neigh_key *key) in prestera_nh_neigh_key_is_valid() argument
64 return memchr_inv(key, 0, sizeof(*key)) ? true : false; in prestera_nh_neigh_key_is_valid()
224 if (!memcmp(k, &rif_entry->key, sizeof(*k))) in prestera_rif_entry_find()
238 memcpy(&iface, &e->key.iface, sizeof(iface)); in prestera_rif_entry_destroy()
259 if (__prestera_rif_entry_key_copy(k, &e->key)) in prestera_rif_entry_create()
269 memcpy(&iface, &e->key.iface, sizeof(iface)); in prestera_rif_entry_create()
299 struct prestera_nh_neigh_key *key) in __prestera_nh_neigh_create() argument
308 memcpy(&neigh->key, key, sizeof(*key)); in __prestera_nh_neigh_create()
327 struct prestera_nh_neigh_key *key) in prestera_nh_neigh_find() argument
332 key, __prestera_nh_neigh_ht_params); in prestera_nh_neigh_find()
338 struct prestera_nh_neigh_key *key) in prestera_nh_neigh_get() argument
342 neigh = prestera_nh_neigh_find(sw, key); in prestera_nh_neigh_get()
344 return __prestera_nh_neigh_create(sw, key); in prestera_nh_neigh_get()
394 struct prestera_nexthop_group_key *key) in __prestera_nexthop_group_create() argument
404 memcpy(&nh_grp->key, key, sizeof(*key)); in __prestera_nexthop_group_create()
406 if (!prestera_nh_neigh_key_is_valid(&nh_grp->key.neigh[nh_cnt])) in __prestera_nexthop_group_create()
410 &nh_grp->key.neigh[nh_cnt]); in __prestera_nexthop_group_create()
481 struct prestera_nexthop_group_key *key) in __prestera_nexthop_group_find() argument
486 key, __prestera_nexthop_group_ht_params); in __prestera_nexthop_group_find()
492 struct prestera_nexthop_group_key *key) in prestera_nexthop_group_get() argument
496 nh_grp = __prestera_nexthop_group_find(sw, key); in prestera_nexthop_group_get()
500 nh_grp = __prestera_nexthop_group_create(sw, key); in prestera_nexthop_group_get()
569 prestera_fib_node_find(struct prestera_switch *sw, struct prestera_fib_key *key) in prestera_fib_node_find() argument
573 fib_node = rhashtable_lookup_fast(&sw->router->fib_ht, key, in prestera_fib_node_find()
584 prestera_hw_lpm_del(sw, vr->hw_vr_id, fib_node->key.addr.u.ipv4, in __prestera_fib_node_destruct()
585 fib_node->key.prefix_len); in __prestera_fib_node_destruct()
622 struct prestera_fib_key *key, in prestera_fib_node_create() argument
635 memcpy(&fib_node->key, key, sizeof(*key)); in prestera_fib_node_create()
638 vr = prestera_vr_get(sw, key->tb_id, NULL); in prestera_fib_node_create()
664 err = prestera_hw_lpm_add(sw, vr->hw_vr_id, key->addr.u.ipv4, in prestera_fib_node_create()
665 key->prefix_len, grp_id); in prestera_fib_node_create()
677 prestera_hw_lpm_del(sw, vr->hw_vr_id, key->addr.u.ipv4, in prestera_fib_node_create()
678 key->prefix_len); in prestera_fib_node_create()