Lines Matching refs:vlan
213 struct net_bridge_vlan *vlan; in br_multicast_pg_to_port_ctx() local
229 vlan = br_vlan_find(nbp_vlan_group_rcu(pg->key.port), pg->key.addr.vid); in br_multicast_pg_to_port_ctx()
230 if (vlan && !br_multicast_port_ctx_vlan_disabled(&vlan->port_mcast_ctx)) in br_multicast_pg_to_port_ctx()
231 pmctx = &vlan->port_mcast_ctx; in br_multicast_pg_to_port_ctx()
243 struct net_bridge_vlan *vlan; in br_multicast_port_vid_to_port_ctx() local
253 vlan = br_vlan_find(nbp_vlan_group_rcu(port), vid); in br_multicast_port_vid_to_port_ctx()
254 if (vlan && !br_multicast_port_ctx_vlan_disabled(&vlan->port_mcast_ctx)) in br_multicast_port_vid_to_port_ctx()
255 pmctx = &vlan->port_mcast_ctx; in br_multicast_port_vid_to_port_ctx()
910 struct net_bridge_vlan *vlan = NULL; in __br_multicast_query_handle_vlan() local
913 vlan = pmctx->vlan; in __br_multicast_query_handle_vlan()
915 vlan = brmctx->vlan; in __br_multicast_query_handle_vlan()
917 if (vlan && !(vlan->flags & BRIDGE_VLAN_INFO_UNTAGGED)) { in __br_multicast_query_handle_vlan()
922 __vlan_hwaccel_put_tag(skb, htons(vlan_proto), vlan->vid); in __br_multicast_query_handle_vlan()
1998 struct net_bridge_vlan *vlan, in br_multicast_port_ctx_init() argument
2002 pmctx->vlan = vlan; in br_multicast_port_ctx_init()
2111 if (pg->key.addr.vid == pmctx->vlan->vid) in __br_multicast_enable_port_ctx()
2124 !(pmctx->vlan->priv_flags & BR_VLFLAG_MCAST_ENABLED)) { in br_multicast_enable_port_ctx()
2141 pg->key.addr.vid == pmctx->vlan->vid)) in __br_multicast_disable_port_ctx()
2161 !(pmctx->vlan->priv_flags & BR_VLFLAG_MCAST_ENABLED)) { in br_multicast_disable_port_ctx()
2175 struct net_bridge_vlan *vlan; in br_multicast_toggle_port() local
2185 list_for_each_entry_rcu(vlan, &vg->vlan_list, vlist) { in br_multicast_toggle_port()
2187 &vlan->port_mcast_ctx; in br_multicast_toggle_port()
2188 u8 state = br_vlan_get_state(vlan); in br_multicast_toggle_port()
4006 struct net_bridge_vlan *vlan, in br_multicast_rcv() argument
4017 if (br_opt_get((*brmctx)->br, BROPT_MCAST_VLAN_SNOOPING_ENABLED) && vlan) { in br_multicast_rcv()
4023 if (br_vlan_is_master(vlan)) { in br_multicast_rcv()
4024 masterv = vlan; in br_multicast_rcv()
4025 *brmctx = &vlan->br_mcast_ctx; in br_multicast_rcv()
4028 masterv = vlan->brvlan; in br_multicast_rcv()
4029 *brmctx = &vlan->brvlan->br_mcast_ctx; in br_multicast_rcv()
4030 *pmctx = &vlan->port_mcast_ctx; in br_multicast_rcv()
4101 struct net_bridge_vlan *vlan, in br_multicast_ctx_init() argument
4105 brmctx->vlan = vlan; in br_multicast_ctx_init()
4253 struct net_bridge_vlan *vlan; in br_multicast_open() local
4257 list_for_each_entry(vlan, &vg->vlan_list, vlist) { in br_multicast_open()
4260 brmctx = &vlan->br_mcast_ctx; in br_multicast_open()
4261 if (br_vlan_is_brentry(vlan) && in br_multicast_open()
4263 __br_multicast_open(&vlan->br_mcast_ctx); in br_multicast_open()
4311 void br_multicast_toggle_one_vlan(struct net_bridge_vlan *vlan, bool on) in br_multicast_toggle_one_vlan() argument
4319 if (on == !!(vlan->priv_flags & BR_VLFLAG_MCAST_ENABLED)) in br_multicast_toggle_one_vlan()
4322 if (br_vlan_is_master(vlan)) { in br_multicast_toggle_one_vlan()
4323 br = vlan->br; in br_multicast_toggle_one_vlan()
4325 if (!br_vlan_is_brentry(vlan) || in br_multicast_toggle_one_vlan()
4327 br_multicast_ctx_vlan_global_disabled(&vlan->br_mcast_ctx))) in br_multicast_toggle_one_vlan()
4331 vlan->priv_flags ^= BR_VLFLAG_MCAST_ENABLED; in br_multicast_toggle_one_vlan()
4335 __br_multicast_open(&vlan->br_mcast_ctx); in br_multicast_toggle_one_vlan()
4337 __br_multicast_stop(&vlan->br_mcast_ctx); in br_multicast_toggle_one_vlan()
4341 brmctx = br_multicast_port_ctx_get_global(&vlan->port_mcast_ctx); in br_multicast_toggle_one_vlan()
4345 br = vlan->port->br; in br_multicast_toggle_one_vlan()
4347 vlan->priv_flags ^= BR_VLFLAG_MCAST_ENABLED; in br_multicast_toggle_one_vlan()
4349 __br_multicast_enable_port_ctx(&vlan->port_mcast_ctx); in br_multicast_toggle_one_vlan()
4351 __br_multicast_disable_port_ctx(&vlan->port_mcast_ctx); in br_multicast_toggle_one_vlan()
4356 static void br_multicast_toggle_vlan(struct net_bridge_vlan *vlan, bool on) in br_multicast_toggle_vlan() argument
4360 if (WARN_ON_ONCE(!br_vlan_is_master(vlan))) in br_multicast_toggle_vlan()
4363 list_for_each_entry(p, &vlan->br->port_list, list) { in br_multicast_toggle_vlan()
4366 vport = br_vlan_find(nbp_vlan_group(p), vlan->vid); in br_multicast_toggle_vlan()
4372 if (br_vlan_is_brentry(vlan)) in br_multicast_toggle_vlan()
4373 br_multicast_toggle_one_vlan(vlan, on); in br_multicast_toggle_vlan()
4380 struct net_bridge_vlan *vlan; in br_multicast_toggle_vlan_snooping() local
4409 list_for_each_entry(vlan, &vg->vlan_list, vlist) in br_multicast_toggle_vlan_snooping()
4410 br_multicast_toggle_vlan(vlan, on); in br_multicast_toggle_vlan_snooping()
4415 bool br_multicast_toggle_global_vlan(struct net_bridge_vlan *vlan, bool on) in br_multicast_toggle_global_vlan() argument
4422 if (on == !!(vlan->priv_flags & BR_VLFLAG_GLOBAL_MCAST_ENABLED)) in br_multicast_toggle_global_vlan()
4425 vlan->priv_flags ^= BR_VLFLAG_GLOBAL_MCAST_ENABLED; in br_multicast_toggle_global_vlan()
4426 br_multicast_toggle_vlan(vlan, on); in br_multicast_toggle_global_vlan()
4437 struct net_bridge_vlan *vlan; in br_multicast_stop() local
4441 list_for_each_entry(vlan, &vg->vlan_list, vlist) { in br_multicast_stop()
4444 brmctx = &vlan->br_mcast_ctx; in br_multicast_stop()
4445 if (br_vlan_is_brentry(vlan) && in br_multicast_stop()
4447 __br_multicast_stop(&vlan->br_mcast_ctx); in br_multicast_stop()
4626 struct net_bridge_vlan *vlan; in br_multicast_start_querier() local
4628 vlan = br_vlan_find(nbp_vlan_group_rcu(port), in br_multicast_start_querier()
4629 brmctx->vlan->vid); in br_multicast_start_querier()
4630 if (!vlan || in br_multicast_start_querier()
4631 br_multicast_port_ctx_state_stopped(&vlan->port_mcast_ctx)) in br_multicast_start_querier()
4634 ip4_own_query = &vlan->port_mcast_ctx.ip4_own_query; in br_multicast_start_querier()
4636 ip6_own_query = &vlan->port_mcast_ctx.ip6_own_query; in br_multicast_start_querier()