Home
last modified time | relevance | path

Searched refs:br (Results 1 – 25 of 26) sorted by relevance

12

/net/bridge/
Dbr_stp.c35 p->br->dev->name, p->port_no, p->dev->name, in br_log_state()
41 struct net_bridge_port *br_get_port(struct net_bridge *br, u16 port_no) in br_get_port() argument
45 list_for_each_entry_rcu(p, &br->port_list, list) { in br_get_port()
57 struct net_bridge *br; in br_should_become_root_port() local
61 br = p->br; in br_should_become_root_port()
66 if (memcmp(&br->bridge_id, &p->designated_root, 8) <= 0) in br_should_become_root_port()
72 rp = br_get_port(br, root_port); in br_should_become_root_port()
105 static void br_root_selection(struct net_bridge *br) in br_root_selection() argument
110 list_for_each_entry(p, &br->port_list, list) { in br_root_selection()
116 br->root_port = root_port; in br_root_selection()
[all …]
Dbr_stp_if.c43 void br_stp_enable_bridge(struct net_bridge *br) in br_stp_enable_bridge() argument
47 spin_lock_bh(&br->lock); in br_stp_enable_bridge()
48 mod_timer(&br->hello_timer, jiffies + br->hello_time); in br_stp_enable_bridge()
49 mod_timer(&br->gc_timer, jiffies + HZ/10); in br_stp_enable_bridge()
51 br_config_bpdu_generation(br); in br_stp_enable_bridge()
53 list_for_each_entry(p, &br->port_list, list) { in br_stp_enable_bridge()
58 spin_unlock_bh(&br->lock); in br_stp_enable_bridge()
62 void br_stp_disable_bridge(struct net_bridge *br) in br_stp_disable_bridge() argument
66 spin_lock_bh(&br->lock); in br_stp_disable_bridge()
67 list_for_each_entry(p, &br->port_list, list) { in br_stp_disable_bridge()
[all …]
Dbr_stp_timer.c21 static int br_is_designated_for_some_port(const struct net_bridge *br) in br_is_designated_for_some_port() argument
25 list_for_each_entry(p, &br->port_list, list) { in br_is_designated_for_some_port()
27 !memcmp(&p->designated_bridge, &br->bridge_id, 8)) in br_is_designated_for_some_port()
36 struct net_bridge *br = (struct net_bridge *)arg; in br_hello_timer_expired() local
38 pr_debug("%s: hello timer expired\n", br->dev->name); in br_hello_timer_expired()
39 spin_lock(&br->lock); in br_hello_timer_expired()
40 if (br->dev->flags & IFF_UP) { in br_hello_timer_expired()
41 br_config_bpdu_generation(br); in br_hello_timer_expired()
43 mod_timer(&br->hello_timer, round_jiffies(jiffies + br->hello_time)); in br_hello_timer_expired()
45 spin_unlock(&br->lock); in br_hello_timer_expired()
[all …]
Dbr_if.c70 struct net_bridge *br = p->br; in br_port_carrier_check() local
75 if (netif_running(br->dev)) { in br_port_carrier_check()
76 spin_lock_bh(&br->lock); in br_port_carrier_check()
84 spin_unlock_bh(&br->lock); in br_port_carrier_check()
106 p->br = NULL; in destroy_nbp()
131 struct net_bridge *br = p->br; in del_nbp() local
134 sysfs_remove_link(br->ifobj, dev->name); in del_nbp()
138 spin_lock_bh(&br->lock); in del_nbp()
140 spin_unlock_bh(&br->lock); in del_nbp()
144 br_fdb_delete_by_port(br, p, 1); in del_nbp()
[all …]
Dbr_ioctl.c40 static void get_port_ifindices(struct net_bridge *br, int *ifindices, int num) in get_port_ifindices() argument
44 list_for_each_entry(p, &br->port_list, list) { in get_port_ifindices()
57 static int get_fdb_entries(struct net_bridge *br, void __user *userbuf, in get_fdb_entries() argument
74 num = br_fdb_fillbuf(br, buf, maxnum, offset); in get_fdb_entries()
84 static int add_del_if(struct net_bridge *br, int ifindex, int isadd) in add_del_if() argument
92 dev = dev_get_by_index(dev_net(br->dev), ifindex); in add_del_if()
97 ret = br_add_if(br, dev); in add_del_if()
99 ret = br_del_if(br, dev); in add_del_if()
112 struct net_bridge *br = netdev_priv(dev); in old_dev_ioctl() local
121 return add_del_if(br, args[1], args[0] == BRCTL_ADD_IF); in old_dev_ioctl()
[all …]
Dbr_sysfs_br.c34 struct net_bridge *br = to_bridge(d); in store_bridge_parm() local
46 spin_lock_bh(&br->lock); in store_bridge_parm()
47 err = (*set)(br, val); in store_bridge_parm()
48 spin_unlock_bh(&br->lock); in store_bridge_parm()
56 struct net_bridge *br = to_bridge(d); in show_forward_delay() local
57 return sprintf(buf, "%lu\n", jiffies_to_clock_t(br->forward_delay)); in show_forward_delay()
60 static int set_forward_delay(struct net_bridge *br, unsigned long val) in set_forward_delay() argument
63 br->forward_delay = delay; in set_forward_delay()
64 if (br_is_root_bridge(br)) in set_forward_delay()
65 br->bridge_forward_delay = delay; in set_forward_delay()
[all …]
Dbr_fdb.c28 static int fdb_insert(struct net_bridge *br, struct net_bridge_port *source,
55 static inline unsigned long hold_time(const struct net_bridge *br) in hold_time() argument
57 return br->topology_change ? br->forward_delay : br->ageing_time; in hold_time()
60 static inline int has_expired(const struct net_bridge *br, in has_expired() argument
64 && time_before_eq(fdb->ageing_timer + hold_time(br), jiffies); in has_expired()
82 struct net_bridge *br = p->br; in br_fdb_changeaddr() local
85 spin_lock_bh(&br->hash_lock); in br_fdb_changeaddr()
90 hlist_for_each(h, &br->hash[i]) { in br_fdb_changeaddr()
97 list_for_each_entry(op, &br->port_list, list) { in br_fdb_changeaddr()
114 fdb_insert(br, p, newaddr); in br_fdb_changeaddr()
[all …]
Dbr_notify.c36 struct net_bridge *br; in br_device_event() local
42 br = p->br; in br_device_event()
46 dev_set_mtu(br->dev, br_min_mtu(br)); in br_device_event()
50 spin_lock_bh(&br->lock); in br_device_event()
52 br_stp_recalculate_bridge_id(br); in br_device_event()
53 spin_unlock_bh(&br->lock); in br_device_event()
61 spin_lock_bh(&br->lock); in br_device_event()
62 if (netif_running(br->dev)) in br_device_event()
63 br_features_recompute(br); in br_device_event()
64 spin_unlock_bh(&br->lock); in br_device_event()
[all …]
Dbr_device.c25 struct net_bridge *br = netdev_priv(dev); in br_dev_xmit() local
36 br_flood_deliver(br, skb); in br_dev_xmit()
37 else if ((dst = __br_fdb_get(br, dest)) != NULL) in br_dev_xmit()
40 br_flood_deliver(br, skb); in br_dev_xmit()
47 struct net_bridge *br = netdev_priv(dev); in br_dev_open() local
49 br_features_recompute(br); in br_dev_open()
51 br_stp_enable_bridge(br); in br_dev_open()
71 struct net_bridge *br = netdev_priv(dev); in br_change_mtu() local
72 if (new_mtu < 68 || new_mtu > br_min_mtu(br)) in br_change_mtu()
79 br->fake_rtable.u.dst.metrics[RTAX_MTU - 1] = new_mtu; in br_change_mtu()
[all …]
Dbr_private.h63 struct net_bridge *br; member
137 static inline int br_is_root_bridge(const struct net_bridge *br) in br_is_root_bridge() argument
139 return !memcmp(&br->bridge_id, &br->designated_root, 8); in br_is_root_bridge()
149 extern void br_fdb_flush(struct net_bridge *br);
153 extern void br_fdb_delete_by_port(struct net_bridge *br,
155 extern struct net_bridge_fdb_entry *__br_fdb_get(struct net_bridge *br,
157 extern struct net_bridge_fdb_entry *br_fdb_get(struct net_bridge *br,
160 extern int br_fdb_fillbuf(struct net_bridge *br, void *buf,
162 extern int br_fdb_insert(struct net_bridge *br,
165 extern void br_fdb_update(struct net_bridge *br,
[all …]
Dbr_input.c23 static void br_pass_frame_up(struct net_bridge *br, struct sk_buff *skb) in br_pass_frame_up() argument
25 struct net_device *indev, *brdev = br->dev; in br_pass_frame_up()
42 struct net_bridge *br; in br_handle_frame_finish() local
50 br = p->br; in br_handle_frame_finish()
51 br_fdb_update(br, p, eth_hdr(skb)->h_source); in br_handle_frame_finish()
59 if (br->dev->flags & IFF_PROMISC) in br_handle_frame_finish()
65 br->dev->stats.multicast++; in br_handle_frame_finish()
67 } else if ((dst = __br_fdb_get(br, dest)) && dst->is_local) { in br_handle_frame_finish()
77 br_pass_frame_up(br, skb2); in br_handle_frame_finish()
83 br_flood_forward(br, skb); in br_handle_frame_finish()
[all …]
Dbr_stp_bpdu.c50 llc_mac_hdr_init(skb, p->dev->dev_addr, p->br->group_addr); in br_send_bpdu()
75 if (p->br->stp_enabled != BR_KERNEL_STP) in br_send_config_bpdu()
120 if (p->br->stp_enabled != BR_KERNEL_STP) in br_send_tcn_bpdu()
140 struct net_bridge *br; in br_stp_rcv() local
154 br = p->br; in br_stp_rcv()
155 spin_lock(&br->lock); in br_stp_rcv()
157 if (br->stp_enabled != BR_KERNEL_STP) in br_stp_rcv()
160 if (!(br->dev->flags & IFF_UP)) in br_stp_rcv()
166 if (compare_ether_addr(dest, br->group_addr) != 0) in br_stp_rcv()
216 spin_unlock(&br->lock); in br_stp_rcv()
Dbr_forward.c106 static void br_flood(struct net_bridge *br, struct sk_buff *skb, in br_flood() argument
115 list_for_each_entry_rcu(p, &br->port_list, list) { in br_flood()
121 br->dev->stats.tx_dropped++; in br_flood()
143 void br_flood_deliver(struct net_bridge *br, struct sk_buff *skb) in br_flood_deliver() argument
145 br_flood(br, skb, __br_deliver); in br_flood_deliver()
149 void br_flood_forward(struct net_bridge *br, struct sk_buff *skb) in br_flood_forward() argument
151 br_flood(br, skb, __br_forward); in br_flood_forward()
Dbr_private_stp.h36 return !memcmp(&p->designated_bridge, &p->br->bridge_id, 8) && in br_is_designated_port()
42 extern void br_become_root_bridge(struct net_bridge *br);
49 extern void br_transmit_tcn(struct net_bridge *br);
50 extern void br_topology_change_detection(struct net_bridge *br);
Dbr_sysfs_if.c141 br_fdb_delete_by_port(p->br, p, 0); // Don't delete local entry in store_flush()
193 if (p->dev && p->br && brport_attr->store) { in brport_store()
194 spin_lock_bh(&p->br->lock); in brport_store()
196 spin_unlock_bh(&p->br->lock); in brport_store()
217 struct net_bridge *br = p->br; in br_sysfs_addif() local
221 err = sysfs_create_link(&p->kobj, &br->dev->dev.kobj, in br_sysfs_addif()
232 err = sysfs_create_link(br->ifobj, &p->kobj, p->dev->name); in br_sysfs_addif()
Dbr_netlink.c38 const struct net_bridge *br = port->br; in br_fill_ifinfo() local
45 event, dev->name, br->dev->name); in br_fill_ifinfo()
60 NLA_PUT_U32(skb, IFLA_MASTER, br->dev->ifindex); in br_fill_ifinfo()
172 if (p->br->stp_enabled == BR_KERNEL_STP) in br_rtm_setlink()
DMakefile7 bridge-y := br.o br_device.o br_fdb.o br_forward.o br_if.o br_input.o \
Dbr_netfilter.c122 void br_netfilter_rtable_init(struct net_bridge *br) in br_netfilter_rtable_init() argument
124 struct rtable *rt = &br->fake_rtable; in br_netfilter_rtable_init()
127 rt->u.dst.dev = br->dev; in br_netfilter_rtable_init()
138 return port ? &port->br->fake_rtable : NULL; in bridge_parent_rtable()
145 return port ? port->br->dev : NULL; in bridge_parent()
/net/bridge/netfilter/
Debt_redirect.c28 par->in->br_port->br->dev->dev_addr, ETH_ALEN); in ebt_redirect_tg()
Debt_ulog.c185 strcpy(pm->indev, in->br_port->br->dev->name); in ebt_ulog_packet()
194 strcpy(pm->outdev, out->br_port->br->dev->name); in ebt_ulog_packet()
Debtables.c120 e->logical_in, in->br_port->br->dev), EBT_ILOGICALIN)) in ebt_basic_match()
123 e->logical_out, out->br_port->br->dev), EBT_ILOGICALOUT)) in ebt_basic_match()
/net/netfilter/
Dnfnetlink_queue.c301 htonl(indev->br_port->br->dev->ifindex)); in nfqnl_build_packet_message()
326 htonl(outdev->br_port->br->dev->ifindex)); in nfqnl_build_packet_message()
Dnfnetlink_log.c405 htonl(indev->br_port->br->dev->ifindex)); in __build_packet_message()
432 htonl(outdev->br_port->br->dev->ifindex)); in __build_packet_message()
/net/sched/
DKconfig180 RFCs, is available at <http://www.gta.ufrj.br/diffserv/>.
/net/atm/
Dlec.c539 f = br_fdb_get_hook(dev->br_port->br, in lec_atm_send()

12