| /net/bridge/ |
| A D | br_stp.c | 109 br = p->br; in br_should_become_root_port() 185 br->designated_root = br->bridge_id; in br_root_selection() 197 br->max_age = br->bridge_max_age; in br_become_root_bridge() 220 br = p->br; in br_transmit_config() 232 = br_get_port(br, br->root_port); in br_transmit_config() 279 p = br_get_port(br, br->root_port); in br_transmit_tcn() 293 br = p->br; in br_should_become_designated_port() 422 br = p->br; in br_become_designated_port() 449 struct net_bridge *br = p->br; in br_make_forwarding() local 527 br = p->br; in br_received_config_bpdu() [all …]
|
| A D | br_stp_if.c | 53 spin_lock_bh(&br->lock); in br_stp_enable_bridge() 55 mod_timer(&br->hello_timer, jiffies + br->hello_time); in br_stp_enable_bridge() 65 spin_unlock_bh(&br->lock); in br_stp_enable_bridge() 73 spin_lock_bh(&br->lock); in br_stp_disable_bridge() 82 spin_unlock_bh(&br->lock); in br_stp_disable_bridge() 101 struct net_bridge *br = p->br; in br_stp_disable_port() local 158 spin_lock_bh(&br->lock); in br_stp_start() 174 mod_timer(&br->hello_timer, jiffies + br->hello_time); in br_stp_start() 212 br_stp_start(br); in br_stp_set_enabled() 215 br_stp_stop(br); in br_stp_set_enabled() [all …]
|
| A D | br_stp_timer.c | 32 struct net_bridge *br = timer_container_of(br, t, hello_timer); in br_hello_timer_expired() local 35 spin_lock(&br->lock); in br_hello_timer_expired() 43 spin_unlock(&br->lock); in br_hello_timer_expired() 50 struct net_bridge *br = p->br; in br_message_age_timer_expired() local 66 spin_lock(&br->lock); in br_message_age_timer_expired() 84 struct net_bridge *br = p->br; in br_forward_delay_timer_expired() local 88 spin_lock(&br->lock); in br_forward_delay_timer_expired() 107 struct net_bridge *br = timer_container_of(br, t, tcn_timer); in br_tcn_timer_expired() local 111 if (!br_is_root_bridge(br) && (br->dev->flags & IFF_UP)) { in br_tcn_timer_expired() 114 mod_timer(&br->tcn_timer, jiffies + br->bridge_hello_time); in br_tcn_timer_expired() [all …]
|
| A D | br_device.c | 68 if (!br_allowed_ingress(br, br_vlan_group_rcu(br), skb, &vid, in br_dev_xmit() 143 br_vlan_flush(br); in br_dev_init() 159 br_vlan_flush(br); in br_dev_uninit() 160 br_mdb_hash_fini(br); in br_dev_uninit() 161 br_fdb_hash_fini(br); in br_dev_uninit() 502 br->dev = dev; in br_dev_setup() 524 br->designated_root = br->bridge_id; in br_dev_setup() 525 br->bridge_max_age = br->max_age = 20 * HZ; in br_dev_setup() 526 br->bridge_hello_time = br->hello_time = 2 * HZ; in br_dev_setup() 527 br->bridge_forward_delay = br->forward_delay = 15 * HZ; in br_dev_setup() [all …]
|
| A D | br_if.c | 76 struct net_bridge *br = p->br; in br_port_carrier_check() local 152 if ((br->dev->flags & IFF_PROMISC) || !br_vlan_enabled(br->dev)) in br_manage_promisc() 192 if (backup_p->br != p->br) in nbp_backup_change() 241 br->auto_cnt = cnt; in nbp_update_port_count() 285 p->br = NULL; in destroy_nbp() 335 struct net_bridge *br = p->br; in del_nbp() local 353 update_headroom(br, get_max_headroom(br)); in del_nbp() 435 p->br = br; in new_nbp() 524 dev_set_mtu(br->dev, br_mtu_min(br)); in br_mtu_auto_adjust() 733 if (!p || p->br != br) in br_del_if() [all …]
|
| A D | br_fdb.c | 65 return br->topology_change ? br->forward_delay : br->ageing_time; in hold_time() 241 struct net_bridge *br; in br_fdb_find_port() local 460 struct net_bridge *br = p->br; in br_fdb_changeaddr() local 507 f = br_fdb_find(br, br->dev->dev_addr, 0); in br_fdb_change_mac_address() 523 f = br_fdb_find(br, br->dev->dev_addr, v->vid); in br_fdb_change_mac_address() 666 if (p->br != br) { in __fdb_flush_validate_ifindex() 708 br = p->br; in br_fdb_delete_bulk() 1075 br->dev->name); in fdb_add_entry() 1163 br->dev->name); in __br_fdb_add() 1233 br = p->br; in br_fdb_add() [all …]
|
| A D | br_sysfs_br.c | 51 err = (*set)(br, val, &extack); in store_bridge_parm() 53 netdev_state_change(br->dev); in store_bridge_parm() 185 br->group_fwd_mask = val; in set_group_fwd_mask() 204 (br->bridge_id.prio[0] << 8) | br->bridge_id.prio[1]); in priority_show() 329 spin_lock_bh(&br->lock); in group_addr_store() 331 spin_unlock_bh(&br->lock); in group_addr_store() 334 br_recalculate_fwd_mask(br); in group_addr_store() 351 br_fdb_flush(br, &desc); in set_flush() 503 br->hash_max = val; in set_hash_max() 1064 if (!br->ifobj) { in br_sysfs_addbr() [all …]
|
| A D | br_vlan.c | 234 br = v->br; in br_vlan_init_state() 236 br = v->port->br; in br_vlan_init_state() 269 br = v->br; in __vlan_add() 274 br = p->br; in __vlan_add() 682 struct net_bridge *br = p->br; in br_should_learn() local 800 vlan->br = br; in br_vlan_add() 1714 .br = br in br_vlan_link_state_change() 1749 ret = br_vlan_add(br, br->default_pvid, in br_vlan_bridge_event() 1756 changed = !br_vlan_delete(br, br->default_pvid); in br_vlan_bridge_event() 2018 br = p->br; in br_vlan_dump_dev() [all …]
|
| A D | br.c | 34 struct net_bridge *br; in br_device_event() local 66 br = p->br; in br_device_event() 70 br_mtu_auto_adjust(br); in br_device_event() 85 spin_lock_bh(&br->lock); in br_device_event() 88 spin_unlock_bh(&br->lock); in br_device_event() 104 spin_lock_bh(&br->lock); in br_device_event() 109 spin_unlock_bh(&br->lock); in br_device_event() 114 spin_lock_bh(&br->lock); in br_device_event() 122 br_del_if(br, dev); in br_device_event() 162 struct net_bridge *br; in br_switchdev_event() local [all …]
|
| A D | br_mrp.c | 453 spin_lock_bh(&br->lock); in br_mrp_del_impl() 465 spin_lock_bh(&br->lock); in br_mrp_del_impl() 477 spin_lock_bh(&br->lock); in br_mrp_del_impl() 527 spin_lock_bh(&br->lock); in br_mrp_add() 534 spin_lock_bh(&br->lock); in br_mrp_add() 554 br_mrp_del_impl(br, mrp); in br_mrp_add() 570 br_mrp_del_impl(br, mrp); in br_mrp_port_del() 583 br_mrp_del_impl(br, mrp); in br_mrp_del() 810 spin_lock_bh(&br->lock); in br_mrp_set_in_role() 1079 struct net_bridge *br; in br_mrp_rcv() local [all …]
|
| A D | br_multicast.c | 640 struct net_bridge *br = mp->br; in br_multicast_del_mdb_entry() local 652 struct net_bridge *br = mp->br; in br_multicast_group_expired() local 1299 mp->br = br; in br_multicast_new_group() 3172 if (!p || p->br != br) in __br_multicast_get_querier_port() 4104 brmctx->br = br; in br_multicast_ctx_init() 4296 br = v->port->br; in br_multicast_update_vlan_mcast_ctx() 4323 br = vlan->br; in br_multicast_toggle_one_vlan() 4345 br = vlan->port->br; in br_multicast_toggle_one_vlan() 4874 br = port->br; in br_multicast_list_adjacent() 4921 br = port->br; in br_multicast_has_querier_anywhere() [all …]
|
| A D | br_private.h | 102 struct net_bridge *br; member 138 struct net_bridge *br; member 222 struct net_bridge *br; member 337 struct net_bridge *br; member 371 struct net_bridge *br; member 384 struct net_bridge *br; member 649 return !memcmp(&br->bridge_id, &br->designated_root, 8); in br_is_root_bridge() 1620 const struct net_bridge *br) in br_vlan_group() argument 1632 const struct net_bridge *br) in br_vlan_group_rcu() argument 2086 struct net_bridge *br, [all …]
|
| A D | br_netlink.c | 110 br = netdev_priv(dev); in br_get_link_af_size_filtered() 128 if (!br) in br_get_link_af_size_filtered() 461 struct net_bridge *br; in br_fill_ifinfo() local 466 br = port->br; in br_fill_ifinfo() 468 br = netdev_priv(dev); in br_fill_ifinfo() 638 br = port->br; in br_info_notify() 641 dev = br->dev; in br_info_notify() 1386 memcpy(br->group_addr, new_addr, sizeof(br->group_addr)); in br_changelink() 1648 u16 priority = (br->bridge_id.prio[0] << 8) | br->bridge_id.prio[1]; in br_fill_info() 1771 struct net_bridge *br; in br_get_linkxstats_size() local [all …]
|
| A D | br_ioctl.c | 87 struct net *net = dev_net(br->dev); in add_del_if() 99 ret = br_add_if(br, dev, NULL); in add_del_if() 101 ret = br_del_if(br, dev); in add_del_if() 173 b.forward_delay = br->forward_delay; in br_dev_siocdevprivate() 179 b.root_port = br->root_port; in br_dev_siocdevprivate() 236 ret = br_set_max_age(br, args[1]); in br_dev_siocdevprivate() 299 spin_lock_bh(&br->lock); in br_dev_siocdevprivate() 304 spin_unlock_bh(&br->lock); in br_dev_siocdevprivate() 313 spin_lock_bh(&br->lock); in br_dev_siocdevprivate() 318 spin_unlock_bh(&br->lock); in br_dev_siocdevprivate() [all …]
|
| A D | br_mrp_switchdev.c | 8 br_mrp_switchdev_port_obj(struct net_bridge *br, in br_mrp_switchdev_port_obj() argument 14 err = switchdev_port_obj_add(br->dev, obj, NULL); in br_mrp_switchdev_port_obj() 16 err = switchdev_port_obj_del(br->dev, obj); in br_mrp_switchdev_port_obj() 34 .obj.orig_dev = br->dev, in br_mrp_switchdev_add() 51 .obj.orig_dev = br->dev, in br_mrp_switchdev_del() 69 .obj.orig_dev = br->dev, in br_mrp_switchdev_set_ring_role() 107 .obj.orig_dev = br->dev, in br_mrp_switchdev_send_ring_test() 127 .obj.orig_dev = br->dev, in br_mrp_switchdev_set_ring_state() 145 .obj.orig_dev = br->dev, in br_mrp_switchdev_set_in_role() 183 .obj.orig_dev = br->dev, in br_mrp_switchdev_set_in_state() [all …]
|
| A D | br_input.c | 41 vg = br_vlan_group_rcu(br); in br_pass_frame_up() 61 skb = br_handle_vlan(br, NULL, vg, skb); in br_pass_frame_up() 87 struct net_bridge *br; in br_handle_frame_finish() local 95 br = p->br; in br_handle_frame_finish() 97 if (br_mst_is_enabled(br)) { in br_handle_frame_finish() 108 brmctx = &p->br->multicast_ctx; in br_handle_frame_finish() 195 DEV_STATS_INC(br->dev, multicast); in br_handle_frame_finish() 200 DEV_STATS_INC(br->dev, multicast); in br_handle_frame_finish() 390 fwd_mask |= p->br->group_fwd_mask; in br_handle_frame() 399 fwd_mask |= p->br->group_fwd_mask; in br_handle_frame() [all …]
|
| A D | br_cfm.c | 379 struct net_bridge *br; in br_cfm_frame_rx() local 392 br = port->br; in br_cfm_frame_rx() 533 mep = br_mep_find(br, instance); in br_cfm_mep_create() 561 if (hlist_empty(&br->mep_list)) in br_cfm_mep_create() 590 if (hlist_empty(&br->mep_list)) in mep_delete_implementation() 602 mep = br_mep_find(br, instance); in br_cfm_mep_delete() 623 mep = br_mep_find(br, instance); in br_cfm_mep_config_set() 645 mep = br_mep_find(br, instance); in br_cfm_cc_config_set() 682 mep = br_mep_find(br, instance); in br_cfm_cc_peer_mep_add() 721 mep = br_mep_find(br, instance); in br_cfm_cc_peer_mep_remove() [all …]
|
| A D | br_private_mrp.h | 66 int br_mrp_add(struct net_bridge *br, struct br_mrp_instance *instance); 67 int br_mrp_del(struct net_bridge *br, struct br_mrp_instance *instance); 72 int br_mrp_set_ring_state(struct net_bridge *br, 77 int br_mrp_set_in_role(struct net_bridge *br, struct br_mrp_in_role *role); 78 int br_mrp_start_in_test(struct net_bridge *br, 82 int br_mrp_switchdev_add(struct net_bridge *br, struct br_mrp *mrp); 83 int br_mrp_switchdev_del(struct net_bridge *br, struct br_mrp *mrp); 85 br_mrp_switchdev_set_ring_role(struct net_bridge *br, struct br_mrp *mrp, 90 br_mrp_switchdev_send_ring_test(struct net_bridge *br, struct br_mrp *mrp, 97 br_mrp_switchdev_set_in_role(struct net_bridge *br, struct br_mrp *mrp, [all …]
|
| A D | br_switchdev.c | 206 struct net_bridge *br = joining->br; in nbp_switchdev_hwdom_set() local 222 set_bit(hwdom, &br->busy_hwdoms); in nbp_switchdev_hwdom_set() 229 struct net_bridge *br = leaving->br; in nbp_switchdev_hwdom_put() local 321 struct net_bridge *br; in br_switchdev_fdb_replay() local 331 br = netdev_priv(br_dev); in br_switchdev_fdb_replay() 372 vg = br_vlan_group(br); in br_switchdev_vlan_attr_replay() 509 struct net_bridge *br = port->br; in br_switchdev_mdb_complete() local 515 spin_lock_bh(&br->multicast_lock); in br_switchdev_mdb_complete() 516 mp = br_mdb_ip_get(br, &data->ip); in br_switchdev_mdb_complete() 689 struct net_bridge *br; in br_switchdev_mdb_replay() local [all …]
|
| A D | br_mdb.c | 249 ifindex = mp->br->dev->ifindex; in __mdb_fill_info() 716 brmctx = &br->multicast_ctx; in __br_mdb_choose_context() 837 sg_cfg.br = cfg->br; in br_mdb_add_group_src_fwd() 1046 struct net_bridge *br = cfg->br; in br_mdb_add_group() local 1242 cfg->br = netdev_priv(dev); in br_mdb_config_init() 1271 if (cfg->p->br != cfg->br) { in br_mdb_config_init() 1335 vg = br_vlan_group(cfg.br); in br_mdb_add() 1361 struct net_bridge *br = cfg->br; in __br_mdb_del() local 1369 mp = br_mdb_ip_get(br, &ip); in __br_mdb_del() 1414 vg = br_vlan_group(cfg.br); in br_mdb_del() [all …]
|
| A D | br_cfm_netlink.c | 127 return br_cfm_mep_create(br, instance, &create, extack); in br_mep_create_parse() 150 return br_cfm_mep_delete(br, instance, extack); in br_mep_delete_parse() 192 return br_cfm_mep_config_set(br, instance, &config, extack); in br_mep_config_parse() 233 return br_cfm_cc_config_set(br, instance, &config, extack); in br_cc_config_parse() 314 return br_cfm_cc_rdi_set(br, instance, rdi, extack); in br_cc_rdi_parse() 376 return br_cfm_cc_ccm_tx(br, instance, &tx_info, extack); in br_cc_ccm_tx_parse() 389 br = p->br; in br_cfm_parse() 439 err = br_cc_rdi_parse(br, tb[IFLA_BRIDGE_CFM_CC_RDI], in br_cfm_parse() 461 hlist_for_each_entry_rcu(mep, &br->mep_list, head) { in br_cfm_config_fill_info() 617 struct net_bridge *br, in br_cfm_status_fill_info() argument [all …]
|
| A D | br_mrp_netlink.c | 62 return br_mrp_add(br, &inst); in br_mrp_instance_parse() 64 return br_mrp_del(br, &inst); in br_mrp_instance_parse() 192 return br_mrp_set_ring_role(br, &role); in br_mrp_ring_role_parse() 238 return br_mrp_start_test(br, &test); in br_mrp_start_test_parse() 272 return br_mrp_set_in_state(br, &state); in br_mrp_in_state_parse() 312 return br_mrp_set_in_role(br, &role); in br_mrp_in_role_parse() 366 br = p->br; in br_mrp_parse() 368 if (br->stp_enabled != BR_NO_STP) { in br_mrp_parse() 400 err = br_mrp_ring_state_parse(br, in br_mrp_parse() 415 err = br_mrp_start_test_parse(br, in br_mrp_parse() [all …]
|
| A D | br_arp_nd_proxy.c | 32 list_for_each_entry(p, &br->port_list, list) { in br_recalculate_neigh_suppress_enabled() 71 vg = br_vlan_group_rcu(br); in br_arp_send() 128 struct net_device *dev = br->dev; in br_do_proxy_suppress_arp() 203 f = br_fdb_find_rcu(br, n->ha, vid); in br_do_proxy_suppress_arp() 211 br_arp_send(br, p, skb->dev, sip, tip, in br_do_proxy_suppress_arp() 214 br_arp_send(br, p, skb->dev, sip, tip, in br_do_proxy_suppress_arp() 351 vg = br_vlan_group_rcu(br); in br_nd_send() 405 struct net_device *dev = br->dev; in br_do_suppress_nd() 467 f = br_fdb_find_rcu(br, n->ha, vid); in br_do_suppress_nd() 473 br_nd_send(br, p, skb, n, in br_do_suppress_nd() [all …]
|
| A D | br_vlan_options.c | 95 struct net_bridge *br; in br_vlan_modify_state() local 105 br = v->br; in br_vlan_modify_state() 107 br = v->port->br; in br_vlan_modify_state() 109 if (br->stp_enabled == BR_KERNEL_STP) { in br_vlan_modify_state() 114 if (br_opt_get(br, BROPT_MST_ENABLED)) { in br_vlan_modify_state() 278 vg = br_vlan_group(br); in br_vlan_process_options() 315 br_vlan_notify(br, p, curr_start->vid, in br_vlan_process_options() 497 bvm->ifindex = br->dev->ifindex; in br_vlan_global_opts_notify() 655 struct net_bridge *br; in br_vlan_rtm_process_global_options() local 666 br = netdev_priv(dev); in br_vlan_rtm_process_global_options() [all …]
|
| A D | br_mst.c | 29 const struct net_bridge *br; in br_mst_get_info() local 36 br = netdev_priv(dev); in br_mst_get_info() 37 if (!br_opt_get(br, BROPT_MST_ENABLED)) in br_mst_get_info() 40 vg = br_vlan_group(br); in br_mst_get_info() 60 if (!p || !br_opt_get(p->br, BROPT_MST_ENABLED)) in br_mst_get_state() 155 .orig_dev = mv->br->dev, in br_mst_vlan_set_msti() 202 .orig_dev = br->dev, in br_mst_set_enabled() 209 list_for_each_entry(p, &br->port_list, list) { in br_mst_set_enabled() 220 if (br_opt_get(br, BROPT_MST_ENABLED) == on) in br_mst_set_enabled() 232 br_opt_toggle(br, BROPT_MST_ENABLED, on); in br_mst_set_enabled() [all …]
|