Lines Matching refs:br

36 	struct net_bridge *br = netdev_priv(dev);  in br_dev_xmit()  local
40 struct pcpu_sw_netstats *brstats = this_cpu_ptr(br->stats); in br_dev_xmit()
61 if (!br_allowed_ingress(br, br_get_vlan_info(br), skb, &vid)) in br_dev_xmit()
65 br_flood_deliver(br, skb, false); in br_dev_xmit()
68 br_flood_deliver(br, skb, false); in br_dev_xmit()
71 if (br_multicast_rcv(br, NULL, skb, vid)) { in br_dev_xmit()
76 mdst = br_mdb_get(br, skb, vid); in br_dev_xmit()
78 br_multicast_querier_exists(br, eth_hdr(skb))) in br_dev_xmit()
81 br_flood_deliver(br, skb, false); in br_dev_xmit()
82 } else if ((dst = __br_fdb_get(br, dest, vid)) != NULL) in br_dev_xmit()
85 br_flood_deliver(br, skb, true); in br_dev_xmit()
99 struct net_bridge *br = netdev_priv(dev); in br_dev_init() local
102 br->stats = netdev_alloc_pcpu_stats(struct pcpu_sw_netstats); in br_dev_init()
103 if (!br->stats) in br_dev_init()
106 err = br_vlan_init(br); in br_dev_init()
108 free_percpu(br->stats); in br_dev_init()
116 struct net_bridge *br = netdev_priv(dev); in br_dev_open() local
120 br_stp_enable_bridge(br); in br_dev_open()
121 br_multicast_open(br); in br_dev_open()
138 struct net_bridge *br = netdev_priv(dev); in br_dev_stop() local
140 br_stp_disable_bridge(br); in br_dev_stop()
141 br_multicast_stop(br); in br_dev_stop()
151 struct net_bridge *br = netdev_priv(dev); in br_get_stats64() local
158 = per_cpu_ptr(br->stats, cpu); in br_get_stats64()
179 struct net_bridge *br = netdev_priv(dev); in br_change_mtu() local
180 if (new_mtu < 68 || new_mtu > br_min_mtu(br)) in br_change_mtu()
187 dst_metric_set(&br->fake_rtable.dst, RTAX_MTU, new_mtu); in br_change_mtu()
196 struct net_bridge *br = netdev_priv(dev); in br_set_mac_address() local
202 spin_lock_bh(&br->lock); in br_set_mac_address()
205 br_stp_change_bridge_id(br, addr->sa_data); in br_set_mac_address()
207 spin_unlock_bh(&br->lock); in br_set_mac_address()
223 struct net_bridge *br = netdev_priv(dev); in br_fix_features() local
225 return br_features_recompute(br, features); in br_fix_features()
235 struct net_bridge *br = netdev_priv(dev); in br_netpoll_cleanup() local
238 list_for_each_entry(p, &br->port_list, list) in br_netpoll_cleanup()
263 if (!p->br->dev->npinfo) in br_netpoll_enable()
271 struct net_bridge *br = netdev_priv(dev); in br_netpoll_setup() local
275 list_for_each_entry(p, &br->port_list, list) { in br_netpoll_setup()
308 struct net_bridge *br = netdev_priv(dev); in br_add_slave() local
310 return br_add_if(br, slave_dev); in br_add_slave()
315 struct net_bridge *br = netdev_priv(dev); in br_del_slave() local
317 return br_del_if(br, slave_dev); in br_del_slave()
354 struct net_bridge *br = netdev_priv(dev); in br_dev_free() local
356 free_percpu(br->stats); in br_dev_free()
366 struct net_bridge *br = netdev_priv(dev); in br_dev_setup() local
384 br->dev = dev; in br_dev_setup()
385 spin_lock_init(&br->lock); in br_dev_setup()
386 INIT_LIST_HEAD(&br->port_list); in br_dev_setup()
387 spin_lock_init(&br->hash_lock); in br_dev_setup()
389 br->bridge_id.prio[0] = 0x80; in br_dev_setup()
390 br->bridge_id.prio[1] = 0x00; in br_dev_setup()
392 ether_addr_copy(br->group_addr, eth_reserved_addr_base); in br_dev_setup()
394 br->stp_enabled = BR_NO_STP; in br_dev_setup()
395 br->group_fwd_mask = BR_GROUPFWD_DEFAULT; in br_dev_setup()
396 br->group_fwd_mask_required = BR_GROUPFWD_DEFAULT; in br_dev_setup()
398 br->designated_root = br->bridge_id; in br_dev_setup()
399 br->bridge_max_age = br->max_age = 20 * HZ; in br_dev_setup()
400 br->bridge_hello_time = br->hello_time = 2 * HZ; in br_dev_setup()
401 br->bridge_forward_delay = br->forward_delay = 15 * HZ; in br_dev_setup()
402 br->ageing_time = 300 * HZ; in br_dev_setup()
404 br_netfilter_rtable_init(br); in br_dev_setup()
405 br_stp_timer_init(br); in br_dev_setup()
406 br_multicast_init(br); in br_dev_setup()