Lines Matching refs:br
98 struct net_bridge *br = NULL; in br_get_link_af_size_filtered() local
110 br = netdev_priv(dev); in br_get_link_af_size_filtered()
111 vg = br_vlan_group_rcu(br); in br_get_link_af_size_filtered()
128 if (!br) in br_get_link_af_size_filtered()
132 br_cfm_mep_count(br, &num_cfm_mep_infos); in br_get_link_af_size_filtered()
133 br_cfm_peer_mep_count(br, &num_cfm_peer_mep_infos); in br_get_link_af_size_filtered()
452 struct net_bridge *br; in br_fill_ifinfo() local
457 br = port->br; in br_fill_ifinfo()
459 br = netdev_priv(dev); in br_fill_ifinfo()
461 br_debug(br, "br_fill_info event %d port %s master %s\n", in br_fill_ifinfo()
462 event, dev->name, br->dev->name); in br_fill_ifinfo()
477 nla_put_u32(skb, IFLA_MASTER, br->dev->ifindex) || in br_fill_ifinfo()
517 vg = br_vlan_group_rcu(br); in br_fill_ifinfo()
538 if (!br_mrp_enabled(br) || port) in br_fill_ifinfo()
542 err = br_mrp_fill_info(skb, br); in br_fill_ifinfo()
553 if (!br_cfm_created(br) || port) in br_fill_ifinfo()
562 err = br_cfm_config_fill_info(skb, br); in br_fill_ifinfo()
570 err = br_cfm_status_fill_info(skb, br, getlink); in br_fill_ifinfo()
580 br_opt_get(br, BROPT_MST_ENABLED) && port) { in br_fill_ifinfo()
615 void br_info_notify(int event, const struct net_bridge *br, in br_info_notify() argument
624 if (WARN_ON(!port && !br)) in br_info_notify()
629 br = port->br; in br_info_notify()
632 dev = br->dev; in br_info_notify()
636 br_debug(br, "port %u(%s) event %d\n", port_no, dev->name, event); in br_info_notify()
656 void br_ifinfo_notify(int event, const struct net_bridge *br, in br_ifinfo_notify() argument
661 return br_info_notify(event, br, port, filter); in br_ifinfo_notify()
683 static int br_vlan_info(struct net_bridge *br, struct net_bridge_port *p, in br_vlan_info() argument
700 err = br_vlan_add(br, vinfo->vid, vinfo->flags, in br_vlan_info()
713 !br_vlan_delete(p->br, vinfo->vid)) in br_vlan_info()
715 } else if (!br_vlan_delete(br, vinfo->vid)) { in br_vlan_info()
724 int br_process_vlan_info(struct net_bridge *br, in br_process_vlan_info() argument
759 err = br_vlan_info(br, p, cmd, &tmp_vinfo, &curr_change, in br_process_vlan_info()
771 br_vlan_notify(br, p, v_change_start, in br_process_vlan_info()
779 br_vlan_notify(br, p, v_change_start, in br_process_vlan_info()
787 err = br_vlan_info(br, p, cmd, vinfo_curr, changed, extack); in br_process_vlan_info()
789 br_vlan_notify(br, p, vinfo_curr->vid, 0, rtm_cmd); in br_process_vlan_info()
794 static int br_afspec(struct net_bridge *br, in br_afspec() argument
816 err = br_process_vlan_tunnel_info(br, p, cmd, in br_afspec()
827 err = br_process_vlan_info(br, p, cmd, vinfo_curr, in br_afspec()
834 err = br_mrp_parse(br, p, attr, cmd, extack); in br_afspec()
839 err = br_cfm_parse(br, p, attr, cmd, extack); in br_afspec()
903 if (p->br->stp_enabled == BR_KERNEL_STP) in br_set_port_state()
914 br_port_state_selection(p->br); in br_set_port_state()
973 br_fdb_flush(p->br, &desc); in br_setport()
1008 br_fdb_delete_by_port(p->br, p, 0, 0); in br_setport()
1069 struct net_bridge *br = (struct net_bridge *)netdev_priv(dev); in br_setlink() local
1098 spin_lock_bh(&p->br->lock); in br_setlink()
1100 spin_unlock_bh(&p->br->lock); in br_setlink()
1106 spin_lock_bh(&p->br->lock); in br_setlink()
1108 spin_unlock_bh(&p->br->lock); in br_setlink()
1116 err = br_afspec(br, p, afspec, RTM_SETLINK, &changed, extack); in br_setlink()
1119 br_ifinfo_notify(RTM_NEWLINK, br, p); in br_setlink()
1127 struct net_bridge *br = (struct net_bridge *)netdev_priv(dev); in br_dellink() local
1142 err = br_afspec(br, p, afspec, RTM_DELLINK, &changed, NULL); in br_dellink()
1147 br_ifinfo_notify(RTM_NEWLINK, br, p); in br_dellink()
1187 struct net_bridge *br = netdev_priv(brdev); in br_port_slave_changelink() local
1193 spin_lock_bh(&br->lock); in br_port_slave_changelink()
1195 spin_unlock_bh(&br->lock); in br_port_slave_changelink()
1256 struct net_bridge *br = netdev_priv(brdev); in br_changelink() local
1263 err = br_set_forward_delay(br, nla_get_u32(data[IFLA_BR_FORWARD_DELAY])); in br_changelink()
1269 err = br_set_hello_time(br, nla_get_u32(data[IFLA_BR_HELLO_TIME])); in br_changelink()
1275 err = br_set_max_age(br, nla_get_u32(data[IFLA_BR_MAX_AGE])); in br_changelink()
1281 err = br_set_ageing_time(br, nla_get_u32(data[IFLA_BR_AGEING_TIME])); in br_changelink()
1289 err = br_stp_set_enabled(br, stp_enabled, extack); in br_changelink()
1297 br_stp_set_bridge_priority(br, priority); in br_changelink()
1303 err = br_vlan_filter_toggle(br, vlan_filter, extack); in br_changelink()
1312 err = __br_vlan_set_proto(br, vlan_proto, extack); in br_changelink()
1320 err = __br_vlan_set_default_pvid(br, defpvid, extack); in br_changelink()
1328 err = br_vlan_set_stats(br, vlan_stats); in br_changelink()
1336 err = br_vlan_set_stats_per_port(br, per_port); in br_changelink()
1347 br->group_fwd_mask = fwd_mask; in br_changelink()
1362 spin_lock_bh(&br->lock); in br_changelink()
1363 memcpy(br->group_addr, new_addr, sizeof(br->group_addr)); in br_changelink()
1364 spin_unlock_bh(&br->lock); in br_changelink()
1365 br_opt_toggle(br, BROPT_GROUP_ADDR_SET, true); in br_changelink()
1366 br_recalculate_fwd_mask(br); in br_changelink()
1374 br_fdb_flush(br, &desc); in br_changelink()
1381 err = br_multicast_set_router(&br->multicast_ctx, in br_changelink()
1390 err = br_multicast_toggle(br, mcast_snooping, extack); in br_changelink()
1399 br_opt_toggle(br, BROPT_MULTICAST_QUERY_USE_IFADDR, !!val); in br_changelink()
1405 err = br_multicast_set_querier(&br->multicast_ctx, in br_changelink()
1412 br_warn(br, "the hash_elasticity option has been deprecated and is always %u\n", in br_changelink()
1416 br->hash_max = nla_get_u32(data[IFLA_BR_MCAST_HASH_MAX]); in br_changelink()
1421 br->multicast_ctx.multicast_last_member_count = val; in br_changelink()
1427 br->multicast_ctx.multicast_startup_query_count = val; in br_changelink()
1433 br->multicast_ctx.multicast_last_member_interval = clock_t_to_jiffies(val); in br_changelink()
1439 br->multicast_ctx.multicast_membership_interval = clock_t_to_jiffies(val); in br_changelink()
1445 br->multicast_ctx.multicast_querier_interval = clock_t_to_jiffies(val); in br_changelink()
1451 br_multicast_set_query_intvl(&br->multicast_ctx, val); in br_changelink()
1457 br->multicast_ctx.multicast_query_response_interval = clock_t_to_jiffies(val); in br_changelink()
1463 br_multicast_set_startup_query_intvl(&br->multicast_ctx, val); in br_changelink()
1470 br_opt_toggle(br, BROPT_MULTICAST_STATS_ENABLED, !!mcast_stats); in br_changelink()
1477 err = br_multicast_set_igmp_version(&br->multicast_ctx, in br_changelink()
1488 err = br_multicast_set_mld_version(&br->multicast_ctx, in br_changelink()
1499 br_opt_toggle(br, BROPT_NF_CALL_IPTABLES, !!val); in br_changelink()
1505 br_opt_toggle(br, BROPT_NF_CALL_IP6TABLES, !!val); in br_changelink()
1511 br_opt_toggle(br, BROPT_NF_CALL_ARPTABLES, !!val); in br_changelink()
1519 err = br_boolopt_multi_toggle(br, bm, extack); in br_changelink()
1531 struct net_bridge *br = netdev_priv(dev); in br_dev_newlink() local
1539 spin_lock_bh(&br->lock); in br_dev_newlink()
1540 br_stp_change_bridge_id(br, nla_data(tb[IFLA_ADDRESS])); in br_dev_newlink()
1541 spin_unlock_bh(&br->lock); in br_dev_newlink()
1609 struct net_bridge *br = netdev_priv(brdev); in br_fill_info() local
1610 u32 forward_delay = jiffies_to_clock_t(br->forward_delay); in br_fill_info()
1611 u32 hello_time = jiffies_to_clock_t(br->hello_time); in br_fill_info()
1612 u32 age_time = jiffies_to_clock_t(br->max_age); in br_fill_info()
1613 u32 ageing_time = jiffies_to_clock_t(br->ageing_time); in br_fill_info()
1614 u32 stp_enabled = br->stp_enabled; in br_fill_info()
1615 u16 priority = (br->bridge_id.prio[0] << 8) | br->bridge_id.prio[1]; in br_fill_info()
1616 u8 vlan_enabled = br_vlan_enabled(br->dev); in br_fill_info()
1620 clockval = br_timer_value(&br->hello_timer); in br_fill_info()
1623 clockval = br_timer_value(&br->tcn_timer); in br_fill_info()
1626 clockval = br_timer_value(&br->topology_change_timer); in br_fill_info()
1630 clockval = br_timer_value(&br->gc_work.timer); in br_fill_info()
1634 br_boolopt_multi_get(br, &bm); in br_fill_info()
1642 nla_put_u16(skb, IFLA_BR_GROUP_FWD_MASK, br->group_fwd_mask) || in br_fill_info()
1644 &br->bridge_id) || in br_fill_info()
1646 &br->designated_root) || in br_fill_info()
1647 nla_put_u16(skb, IFLA_BR_ROOT_PORT, br->root_port) || in br_fill_info()
1648 nla_put_u32(skb, IFLA_BR_ROOT_PATH_COST, br->root_path_cost) || in br_fill_info()
1649 nla_put_u8(skb, IFLA_BR_TOPOLOGY_CHANGE, br->topology_change) || in br_fill_info()
1651 br->topology_change_detected) || in br_fill_info()
1652 nla_put(skb, IFLA_BR_GROUP_ADDR, ETH_ALEN, br->group_addr) || in br_fill_info()
1657 if (nla_put_be16(skb, IFLA_BR_VLAN_PROTOCOL, br->vlan_proto) || in br_fill_info()
1658 nla_put_u16(skb, IFLA_BR_VLAN_DEFAULT_PVID, br->default_pvid) || in br_fill_info()
1660 br_opt_get(br, BROPT_VLAN_STATS_ENABLED)) || in br_fill_info()
1662 br_opt_get(br, BROPT_VLAN_STATS_PER_PORT))) in br_fill_info()
1667 br->multicast_ctx.multicast_router) || in br_fill_info()
1669 br_opt_get(br, BROPT_MULTICAST_ENABLED)) || in br_fill_info()
1671 br_opt_get(br, BROPT_MULTICAST_QUERY_USE_IFADDR)) || in br_fill_info()
1673 br->multicast_ctx.multicast_querier) || in br_fill_info()
1675 br_opt_get(br, BROPT_MULTICAST_STATS_ENABLED)) || in br_fill_info()
1677 nla_put_u32(skb, IFLA_BR_MCAST_HASH_MAX, br->hash_max) || in br_fill_info()
1679 br->multicast_ctx.multicast_last_member_count) || in br_fill_info()
1681 br->multicast_ctx.multicast_startup_query_count) || in br_fill_info()
1683 br->multicast_ctx.multicast_igmp_version) || in br_fill_info()
1684 br_multicast_dump_querier_state(skb, &br->multicast_ctx, in br_fill_info()
1689 br->multicast_ctx.multicast_mld_version)) in br_fill_info()
1692 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_last_member_interval); in br_fill_info()
1696 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_membership_interval); in br_fill_info()
1700 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_querier_interval); in br_fill_info()
1704 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_query_interval); in br_fill_info()
1708 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_query_response_interval); in br_fill_info()
1712 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_startup_query_interval); in br_fill_info()
1719 br_opt_get(br, BROPT_NF_CALL_IPTABLES) ? 1 : 0) || in br_fill_info()
1721 br_opt_get(br, BROPT_NF_CALL_IP6TABLES) ? 1 : 0) || in br_fill_info()
1723 br_opt_get(br, BROPT_NF_CALL_ARPTABLES) ? 1 : 0)) in br_fill_info()
1735 struct net_bridge *br; in br_get_linkxstats_size() local
1740 br = netdev_priv(dev); in br_get_linkxstats_size()
1741 vg = br_vlan_group(br); in br_get_linkxstats_size()
1773 struct net_bridge *br; in br_fill_linkxstats() local
1779 br = netdev_priv(dev); in br_fill_linkxstats()
1780 vg = br_vlan_group(br); in br_fill_linkxstats()
1786 br = p->br; in br_fill_linkxstats()
1830 br_multicast_get_stats(br, p, nla_data(nla)); in br_fill_linkxstats()
1841 spin_lock_bh(&br->lock); in br_fill_linkxstats()
1843 spin_unlock_bh(&br->lock); in br_fill_linkxstats()