Lines Matching refs:me
144 static int vrf_map_elem_get_vrf_ifindex(struct vrf_map_elem *me) in vrf_map_elem_get_vrf_ifindex() argument
146 struct list_head *me_head = &me->vrf_list; in vrf_map_elem_get_vrf_ifindex()
159 struct vrf_map_elem *me; in vrf_map_elem_alloc() local
161 me = kmalloc(sizeof(*me), flags); in vrf_map_elem_alloc()
162 if (!me) in vrf_map_elem_alloc()
165 return me; in vrf_map_elem_alloc()
168 static void vrf_map_elem_free(struct vrf_map_elem *me) in vrf_map_elem_free() argument
170 kfree(me); in vrf_map_elem_free()
173 static void vrf_map_elem_init(struct vrf_map_elem *me, int table_id, in vrf_map_elem_init() argument
176 me->table_id = table_id; in vrf_map_elem_init()
177 me->ifindex = ifindex; in vrf_map_elem_init()
178 me->users = users; in vrf_map_elem_init()
179 INIT_LIST_HEAD(&me->vrf_list); in vrf_map_elem_init()
185 struct vrf_map_elem *me; in vrf_map_lookup_elem() local
189 hash_for_each_possible(vmap->ht, me, hnode, key) { in vrf_map_lookup_elem()
190 if (me->table_id == table_id) in vrf_map_lookup_elem()
191 return me; in vrf_map_lookup_elem()
197 static void vrf_map_add_elem(struct vrf_map *vmap, struct vrf_map_elem *me) in vrf_map_add_elem() argument
199 u32 table_id = me->table_id; in vrf_map_add_elem()
203 hash_add(vmap->ht, &me->hnode, key); in vrf_map_add_elem()
206 static void vrf_map_del_elem(struct vrf_map_elem *me) in vrf_map_del_elem() argument
208 hash_del(&me->hnode); in vrf_map_del_elem()
227 struct vrf_map_elem *new_me, *me; in vrf_map_register_dev() local
244 me = vrf_map_lookup_elem(vmap, table_id); in vrf_map_register_dev()
245 if (!me) { in vrf_map_register_dev()
246 me = new_me; in vrf_map_register_dev()
247 vrf_map_add_elem(vmap, me); in vrf_map_register_dev()
263 users = ++me->users; in vrf_map_register_dev()
267 list_add(&vrf->me_list, &me->vrf_list); in vrf_map_register_dev()
287 struct vrf_map_elem *me; in vrf_map_unregister_dev() local
292 me = vrf_map_lookup_elem(vmap, table_id); in vrf_map_unregister_dev()
293 if (!me) in vrf_map_unregister_dev()
298 users = --me->users; in vrf_map_unregister_dev()
302 vrf_map_del_elem(me); in vrf_map_unregister_dev()
305 vrf_map_elem_free(me); in vrf_map_unregister_dev()
316 struct vrf_map_elem *me; in vrf_ifindex_lookup_by_table_id() local
326 me = vrf_map_lookup_elem(vmap, table_id); in vrf_ifindex_lookup_by_table_id()
327 if (!me) { in vrf_ifindex_lookup_by_table_id()
332 ifindex = vrf_map_elem_get_vrf_ifindex(me); in vrf_ifindex_lookup_by_table_id()