Lines Matching refs:br
32 struct net_bridge *br = netdev_priv(brdev); in br_pass_frame_up() local
33 struct pcpu_sw_netstats *brstats = this_cpu_ptr(br->stats); in br_pass_frame_up()
45 pv = br_get_vlan_info(br); in br_pass_frame_up()
47 !br_allowed_egress(br, pv, skb)) { in br_pass_frame_up()
54 skb = br_handle_vlan(br, pv, skb); in br_pass_frame_up()
63 static void br_do_proxy_arp(struct sk_buff *skb, struct net_bridge *br, in br_do_proxy_arp() argument
66 struct net_device *dev = br->dev; in br_do_proxy_arp()
110 f = __br_fdb_get(br, n->ha, vid); in br_do_proxy_arp()
127 struct net_bridge *br; in br_handle_frame_finish() local
137 if (!br_allowed_ingress(p->br, nbp_get_vlan_info(p), skb, &vid)) in br_handle_frame_finish()
141 br = p->br; in br_handle_frame_finish()
143 br_fdb_update(br, p, eth_hdr(skb)->h_source, vid, false); in br_handle_frame_finish()
146 br_multicast_rcv(br, p, skb, vid)) in br_handle_frame_finish()
152 BR_INPUT_SKB_CB(skb)->brdev = br->dev; in br_handle_frame_finish()
157 if (br->dev->flags & IFF_PROMISC) in br_handle_frame_finish()
163 br_do_proxy_arp(skb, br, vid, p); in br_handle_frame_finish()
169 mdst = br_mdb_get(br, skb, vid); in br_handle_frame_finish()
171 br_multicast_querier_exists(br, eth_hdr(skb))) { in br_handle_frame_finish()
173 br_multicast_is_router(br)) in br_handle_frame_finish()
183 br->dev->stats.multicast++; in br_handle_frame_finish()
184 } else if ((dst = __br_fdb_get(br, dest, vid)) && in br_handle_frame_finish()
196 br_flood_forward(br, skb, skb2, unicast); in br_handle_frame_finish()
218 br_fdb_update(p->br, p, eth_hdr(skb)->h_source, vid, false); in br_handle_local_finish()
246 u16 fwd_mask = p->br->group_fwd_mask_required; in br_handle_frame()
265 if (p->br->stp_enabled == BR_NO_STP || in br_handle_frame()
275 fwd_mask |= p->br->group_fwd_mask; in br_handle_frame()
303 if (ether_addr_equal(p->br->dev->dev_addr, dest)) in br_handle_frame()