Lines Matching refs:name_node
268 struct netdev_name_node *name_node; in netdev_name_node_alloc() local
270 name_node = kmalloc(sizeof(*name_node), GFP_KERNEL); in netdev_name_node_alloc()
271 if (!name_node) in netdev_name_node_alloc()
273 INIT_HLIST_NODE(&name_node->hlist); in netdev_name_node_alloc()
274 name_node->dev = dev; in netdev_name_node_alloc()
275 name_node->name = name; in netdev_name_node_alloc()
276 return name_node; in netdev_name_node_alloc()
282 struct netdev_name_node *name_node; in netdev_name_node_head_alloc() local
284 name_node = netdev_name_node_alloc(dev, dev->name); in netdev_name_node_head_alloc()
285 if (!name_node) in netdev_name_node_head_alloc()
287 INIT_LIST_HEAD(&name_node->list); in netdev_name_node_head_alloc()
288 return name_node; in netdev_name_node_head_alloc()
291 static void netdev_name_node_free(struct netdev_name_node *name_node) in netdev_name_node_free() argument
293 kfree(name_node); in netdev_name_node_free()
297 struct netdev_name_node *name_node) in netdev_name_node_add() argument
299 hlist_add_head_rcu(&name_node->hlist, in netdev_name_node_add()
300 dev_name_hash(net, name_node->name)); in netdev_name_node_add()
303 static void netdev_name_node_del(struct netdev_name_node *name_node) in netdev_name_node_del() argument
305 hlist_del_rcu(&name_node->hlist); in netdev_name_node_del()
312 struct netdev_name_node *name_node; in netdev_name_node_lookup() local
314 hlist_for_each_entry(name_node, head, hlist) in netdev_name_node_lookup()
315 if (!strcmp(name_node->name, name)) in netdev_name_node_lookup()
316 return name_node; in netdev_name_node_lookup()
324 struct netdev_name_node *name_node; in netdev_name_node_lookup_rcu() local
326 hlist_for_each_entry_rcu(name_node, head, hlist) in netdev_name_node_lookup_rcu()
327 if (!strcmp(name_node->name, name)) in netdev_name_node_lookup_rcu()
328 return name_node; in netdev_name_node_lookup_rcu()
340 struct netdev_name_node *name_node; in netdev_name_node_alt_create() local
343 name_node = netdev_name_node_lookup(net, name); in netdev_name_node_alt_create()
344 if (name_node) in netdev_name_node_alt_create()
346 name_node = netdev_name_node_alloc(dev, name); in netdev_name_node_alt_create()
347 if (!name_node) in netdev_name_node_alt_create()
349 netdev_name_node_add(net, name_node); in netdev_name_node_alt_create()
351 list_add_tail_rcu(&name_node->list, &dev->name_node->list); in netdev_name_node_alt_create()
358 struct netdev_name_node *name_node = in netdev_name_node_alt_free() local
361 kfree(name_node->name); in netdev_name_node_alt_free()
362 netdev_name_node_free(name_node); in netdev_name_node_alt_free()
365 static void __netdev_name_node_alt_destroy(struct netdev_name_node *name_node) in __netdev_name_node_alt_destroy() argument
367 netdev_name_node_del(name_node); in __netdev_name_node_alt_destroy()
368 list_del(&name_node->list); in __netdev_name_node_alt_destroy()
369 call_rcu(&name_node->rcu, netdev_name_node_alt_free); in __netdev_name_node_alt_destroy()
374 struct netdev_name_node *name_node; in netdev_name_node_alt_destroy() local
377 name_node = netdev_name_node_lookup(net, name); in netdev_name_node_alt_destroy()
378 if (!name_node) in netdev_name_node_alt_destroy()
383 if (name_node == dev->name_node || name_node->dev != dev) in netdev_name_node_alt_destroy()
386 __netdev_name_node_alt_destroy(name_node); in netdev_name_node_alt_destroy()
392 struct netdev_name_node *name_node, *tmp; in netdev_name_node_alt_flush() local
394 list_for_each_entry_safe(name_node, tmp, &dev->name_node->list, list) { in netdev_name_node_alt_flush()
395 list_del(&name_node->list); in netdev_name_node_alt_flush()
396 netdev_name_node_alt_free(&name_node->rcu); in netdev_name_node_alt_flush()
403 struct netdev_name_node *name_node; in list_netdevice() local
409 netdev_name_node_add(net, dev->name_node); in list_netdevice()
413 netdev_for_each_altname(dev, name_node) in list_netdevice()
414 netdev_name_node_add(net, name_node); in list_netdevice()
427 struct netdev_name_node *name_node; in unlist_netdevice() local
434 netdev_for_each_altname(dev, name_node) in unlist_netdevice()
435 netdev_name_node_del(name_node); in unlist_netdevice()
439 netdev_name_node_del(dev->name_node); in unlist_netdevice()
1307 struct netdev_name_node *name_node; in __dev_alloc_name() local
1309 netdev_for_each_altname(d, name_node) { in __dev_alloc_name()
1310 if (!sscanf(name_node->name, name, &i)) in __dev_alloc_name()
1317 if (!strncmp(buf, name_node->name, IFNAMSIZ)) in __dev_alloc_name()
1430 netdev_name_node_del(dev->name_node); in netif_change_name()
1434 netdev_name_node_add(net, dev->name_node); in netif_change_name()
10920 dev->name_node = netdev_name_node_head_alloc(dev); in register_netdevice()
10921 if (!dev->name_node) in register_netdevice()
11069 netdev_name_node_free(dev->name_node); in register_netdevice()
11987 netdev_name_node_free(dev->name_node); in unregister_netdevice_many_notify()
12063 struct netdev_name_node *name_node; in __dev_change_net_namespace() local
12109 netdev_for_each_altname(dev, name_node) { in __dev_change_net_namespace()
12110 if (netdev_name_in_use(net, name_node->name)) { in __dev_change_net_namespace()
12113 name_node->name); in __dev_change_net_namespace()
12468 struct netdev_name_node *name_node, *tmp; in default_device_exit_net() local
12492 netdev_for_each_altname_safe(dev, name_node, tmp) in default_device_exit_net()
12493 if (netdev_name_in_use(&init_net, name_node->name)) in default_device_exit_net()
12494 __netdev_name_node_alt_destroy(name_node); in default_device_exit_net()