• Home
  • Raw
  • Download

Lines Matching refs:vg

37 static bool __vlan_add_pvid(struct net_bridge_vlan_group *vg, u16 vid)  in __vlan_add_pvid()  argument
39 if (vg->pvid == vid) in __vlan_add_pvid()
43 vg->pvid = vid; in __vlan_add_pvid()
48 static bool __vlan_delete_pvid(struct net_bridge_vlan_group *vg, u16 vid) in __vlan_delete_pvid() argument
50 if (vg->pvid != vid) in __vlan_delete_pvid()
54 vg->pvid = 0; in __vlan_delete_pvid()
62 struct net_bridge_vlan_group *vg; in __vlan_add_flags() local
67 vg = br_vlan_group(v->br); in __vlan_add_flags()
69 vg = nbp_vlan_group(v->port); in __vlan_add_flags()
72 ret = __vlan_add_pvid(vg, v->vid); in __vlan_add_flags()
74 ret = __vlan_delete_pvid(vg, v->vid); in __vlan_add_flags()
102 struct net_bridge_vlan_group *vg; in __vlan_add_list() local
107 vg = br_vlan_group(v->br); in __vlan_add_list()
109 vg = nbp_vlan_group(v->port); in __vlan_add_list()
111 headp = &vg->vlan_list; in __vlan_add_list()
148 struct net_bridge_vlan_group *vg; in br_vlan_get_master() local
151 vg = br_vlan_group(br); in br_vlan_get_master()
152 masterv = br_vlan_find(vg, vid); in br_vlan_get_master()
159 masterv = br_vlan_find(vg, vid); in br_vlan_get_master()
183 struct net_bridge_vlan_group *vg; in br_vlan_put_master() local
188 vg = br_vlan_group(masterv->br); in br_vlan_put_master()
190 rhashtable_remove_fast(&vg->vlan_hash, in br_vlan_put_master()
226 struct net_bridge_vlan_group *vg; in __vlan_add() local
234 vg = br_vlan_group(br); in __vlan_add()
239 vg = nbp_vlan_group(p); in __vlan_add()
289 vg->num_vlans++; in __vlan_add()
292 err = rhashtable_lookup_insert_fast(&vg->vlan_hash, &v->vnode, in __vlan_add()
308 vg->num_vlans--; in __vlan_add()
332 struct net_bridge_vlan_group *vg; in __vlan_del() local
337 vg = br_vlan_group(v->br); in __vlan_del()
340 vg = nbp_vlan_group(v->port); in __vlan_del()
344 __vlan_delete_pvid(vg, v->vid); in __vlan_del()
358 vg->num_vlans--; in __vlan_del()
362 vlan_tunnel_info_del(vg, v); in __vlan_del()
363 rhashtable_remove_fast(&vg->vlan_hash, &v->vnode, in __vlan_del()
375 static void __vlan_group_free(struct net_bridge_vlan_group *vg) in __vlan_group_free() argument
377 WARN_ON(!list_empty(&vg->vlan_list)); in __vlan_group_free()
378 rhashtable_destroy(&vg->vlan_hash); in __vlan_group_free()
379 vlan_tunnel_deinit(vg); in __vlan_group_free()
380 kfree(vg); in __vlan_group_free()
383 static void __vlan_flush(struct net_bridge_vlan_group *vg) in __vlan_flush() argument
387 __vlan_delete_pvid(vg, vg->pvid); in __vlan_flush()
388 list_for_each_entry_safe(vlan, tmp, &vg->vlan_list, vlist) in __vlan_flush()
394 struct net_bridge_vlan_group *vg, in br_handle_vlan() argument
410 v = br_vlan_find(vg, vid); in br_handle_vlan()
446 struct net_bridge_vlan_group *vg, in __allowed_ingress() argument
488 u16 pvid = br_get_pvid(vg); in __allowed_ingress()
516 v = br_vlan_find(vg, *vid); in __allowed_ingress()
536 struct net_bridge_vlan_group *vg, struct sk_buff *skb, in br_allowed_ingress() argument
547 return __allowed_ingress(br, vg, skb, vid); in br_allowed_ingress()
551 bool br_allowed_egress(struct net_bridge_vlan_group *vg, in br_allowed_egress() argument
562 v = br_vlan_find(vg, vid); in br_allowed_egress()
572 struct net_bridge_vlan_group *vg; in br_should_learn() local
579 vg = nbp_vlan_group_rcu(p); in br_should_learn()
580 if (!vg || !vg->num_vlans) in br_should_learn()
587 *vid = br_get_pvid(vg); in br_should_learn()
594 if (br_vlan_find(vg, *vid)) in br_should_learn()
601 struct net_bridge_vlan_group *vg, in br_vlan_add_existing() argument
628 vg->num_vlans++; in br_vlan_add_existing()
650 struct net_bridge_vlan_group *vg; in br_vlan_add() local
657 vg = br_vlan_group(br); in br_vlan_add()
658 vlan = br_vlan_find(vg, vid); in br_vlan_add()
660 return br_vlan_add_existing(br, vg, vlan, flags, changed, in br_vlan_add()
694 struct net_bridge_vlan_group *vg; in br_vlan_delete() local
699 vg = br_vlan_group(br); in br_vlan_delete()
700 v = br_vlan_find(vg, vid); in br_vlan_delete()
707 vlan_tunnel_info_del(vg, v); in br_vlan_delete()
714 struct net_bridge_vlan_group *vg; in br_vlan_flush() local
718 vg = br_vlan_group(br); in br_vlan_flush()
719 __vlan_flush(vg); in br_vlan_flush()
722 __vlan_group_free(vg); in br_vlan_flush()
725 struct net_bridge_vlan *br_vlan_find(struct net_bridge_vlan_group *vg, u16 vid) in br_vlan_find() argument
727 if (!vg) in br_vlan_find()
730 return br_vlan_lookup(&vg->vlan_hash, vid); in br_vlan_find()
815 struct net_bridge_vlan_group *vg; in __br_vlan_set_proto() local
823 vg = nbp_vlan_group(p); in __br_vlan_set_proto()
824 list_for_each_entry(vlan, &vg->vlan_list, vlist) { in __br_vlan_set_proto()
839 vg = nbp_vlan_group(p); in __br_vlan_set_proto()
840 list_for_each_entry(vlan, &vg->vlan_list, vlist) in __br_vlan_set_proto()
847 list_for_each_entry_continue_reverse(vlan, &vg->vlan_list, vlist) in __br_vlan_set_proto()
851 vg = nbp_vlan_group(p); in __br_vlan_set_proto()
852 list_for_each_entry(vlan, &vg->vlan_list, vlist) in __br_vlan_set_proto()
887 struct net_bridge_vlan_group *vg = nbp_vlan_group(p); in br_vlan_set_stats_per_port() local
889 if (vg->num_vlans) in br_vlan_set_stats_per_port()
905 static bool vlan_default_pvid(struct net_bridge_vlan_group *vg, u16 vid) in vlan_default_pvid() argument
909 if (vid != vg->pvid) in vlan_default_pvid()
912 v = br_vlan_lookup(&vg->vlan_hash, vid); in vlan_default_pvid()
943 struct net_bridge_vlan_group *vg; in __br_vlan_set_default_pvid() local
964 vg = br_vlan_group(br); in __br_vlan_set_default_pvid()
965 pvent = br_vlan_find(vg, pvid); in __br_vlan_set_default_pvid()
966 if ((!old_pvid || vlan_default_pvid(vg, old_pvid)) && in __br_vlan_set_default_pvid()
983 vg = nbp_vlan_group(p); in __br_vlan_set_default_pvid()
985 !vlan_default_pvid(vg, old_pvid)) || in __br_vlan_set_default_pvid()
986 br_vlan_find(vg, pvid)) in __br_vlan_set_default_pvid()
1054 struct net_bridge_vlan_group *vg; in br_vlan_init() local
1057 vg = kzalloc(sizeof(*vg), GFP_KERNEL); in br_vlan_init()
1058 if (!vg) in br_vlan_init()
1060 ret = rhashtable_init(&vg->vlan_hash, &br_vlan_rht_params); in br_vlan_init()
1063 ret = vlan_tunnel_init(vg); in br_vlan_init()
1066 INIT_LIST_HEAD(&vg->vlan_list); in br_vlan_init()
1069 rcu_assign_pointer(br->vlgrp, vg); in br_vlan_init()
1075 rhashtable_destroy(&vg->vlan_hash); in br_vlan_init()
1077 kfree(vg); in br_vlan_init()
1090 struct net_bridge_vlan_group *vg; in nbp_vlan_init() local
1093 vg = kzalloc(sizeof(struct net_bridge_vlan_group), GFP_KERNEL); in nbp_vlan_init()
1094 if (!vg) in nbp_vlan_init()
1101 ret = rhashtable_init(&vg->vlan_hash, &br_vlan_rht_params); in nbp_vlan_init()
1104 ret = vlan_tunnel_init(vg); in nbp_vlan_init()
1107 INIT_LIST_HEAD(&vg->vlan_list); in nbp_vlan_init()
1108 rcu_assign_pointer(p->vlgrp, vg); in nbp_vlan_init()
1125 vlan_tunnel_deinit(vg); in nbp_vlan_init()
1127 rhashtable_destroy(&vg->vlan_hash); in nbp_vlan_init()
1130 kfree(vg); in nbp_vlan_init()
1194 struct net_bridge_vlan_group *vg; in nbp_vlan_flush() local
1198 vg = nbp_vlan_group(port); in nbp_vlan_flush()
1199 __vlan_flush(vg); in nbp_vlan_flush()
1202 __vlan_group_free(vg); in nbp_vlan_flush()
1235 struct net_bridge_vlan_group *vg; in __br_vlan_get_pvid() local
1238 vg = nbp_vlan_group(p); in __br_vlan_get_pvid()
1240 vg = br_vlan_group(netdev_priv(dev)); in __br_vlan_get_pvid()
1244 *p_pvid = br_get_pvid(vg); in __br_vlan_get_pvid()
1265 struct net_bridge_vlan_group *vg; in br_vlan_get_info() local
1272 vg = nbp_vlan_group(p); in br_vlan_get_info()
1274 vg = br_vlan_group(netdev_priv(dev)); in br_vlan_get_info()
1278 v = br_vlan_find(vg, vid); in br_vlan_get_info()
1284 if (vid == br_get_pvid(vg)) in br_vlan_get_info()
1358 struct net_bridge_vlan_group *vg; in br_vlan_set_vlan_dev_state() local
1368 vg = nbp_vlan_group(p); in br_vlan_set_vlan_dev_state()
1369 if (br_vlan_find(vg, vid) && br_vlan_is_dev_up(p->dev)) { in br_vlan_set_vlan_dev_state()
1383 struct net_bridge_vlan_group *vg = nbp_vlan_group(p); in br_vlan_set_all_vlan_dev_state() local
1387 list_for_each_entry(vlan, &vg->vlan_list, vlist) { in br_vlan_set_all_vlan_dev_state()