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()
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()
470 br_debug(br, "br_fill_info event %d port %s master %s\n", in br_fill_ifinfo()
471 event, dev->name, br->dev->name); in br_fill_ifinfo()
486 nla_put_u32(skb, IFLA_MASTER, br->dev->ifindex) || in br_fill_ifinfo()
526 vg = br_vlan_group_rcu(br); in br_fill_ifinfo()
547 if (!br_mrp_enabled(br) || port) in br_fill_ifinfo()
551 err = br_mrp_fill_info(skb, br); in br_fill_ifinfo()
562 if (!br_cfm_created(br) || port) in br_fill_ifinfo()
571 err = br_cfm_config_fill_info(skb, br); in br_fill_ifinfo()
579 err = br_cfm_status_fill_info(skb, br, getlink); in br_fill_ifinfo()
589 br_opt_get(br, BROPT_MST_ENABLED) && port) { in br_fill_ifinfo()
624 void br_info_notify(int event, const struct net_bridge *br, in br_info_notify() argument
633 if (WARN_ON(!port && !br)) in br_info_notify()
638 br = port->br; in br_info_notify()
641 dev = br->dev; in br_info_notify()
645 br_debug(br, "port %u(%s) event %d\n", port_no, dev->name, event); in br_info_notify()
665 void br_ifinfo_notify(int event, const struct net_bridge *br, in br_ifinfo_notify() argument
670 br_info_notify(event, br, port, filter); in br_ifinfo_notify()
692 static int br_vlan_info(struct net_bridge *br, struct net_bridge_port *p, in br_vlan_info() argument
709 err = br_vlan_add(br, vinfo->vid, vinfo->flags, in br_vlan_info()
722 !br_vlan_delete(p->br, vinfo->vid)) in br_vlan_info()
724 } else if (!br_vlan_delete(br, vinfo->vid)) { in br_vlan_info()
733 int br_process_vlan_info(struct net_bridge *br, in br_process_vlan_info() argument
768 err = br_vlan_info(br, p, cmd, &tmp_vinfo, &curr_change, in br_process_vlan_info()
780 br_vlan_notify(br, p, v_change_start, in br_process_vlan_info()
788 br_vlan_notify(br, p, v_change_start, in br_process_vlan_info()
796 err = br_vlan_info(br, p, cmd, vinfo_curr, changed, extack); in br_process_vlan_info()
798 br_vlan_notify(br, p, vinfo_curr->vid, 0, rtm_cmd); in br_process_vlan_info()
803 static int br_afspec(struct net_bridge *br, in br_afspec() argument
825 err = br_process_vlan_tunnel_info(br, p, cmd, in br_afspec()
836 err = br_process_vlan_info(br, p, cmd, vinfo_curr, in br_afspec()
843 err = br_mrp_parse(br, p, attr, cmd, extack); in br_afspec()
848 err = br_cfm_parse(br, p, attr, cmd, extack); in br_afspec()
914 if (p->br->stp_enabled == BR_KERNEL_STP) in br_set_port_state()
925 br_port_state_selection(p->br); in br_set_port_state()
986 br_fdb_flush(p->br, &desc); in br_setport()
1021 br_fdb_delete_by_port(p->br, p, 0, 0); in br_setport()
1088 struct net_bridge *br = (struct net_bridge *)netdev_priv(dev); in br_setlink() local
1117 spin_lock_bh(&p->br->lock); in br_setlink()
1119 spin_unlock_bh(&p->br->lock); in br_setlink()
1125 spin_lock_bh(&p->br->lock); in br_setlink()
1127 spin_unlock_bh(&p->br->lock); in br_setlink()
1135 err = br_afspec(br, p, afspec, RTM_SETLINK, &changed, extack); in br_setlink()
1138 br_ifinfo_notify(RTM_NEWLINK, br, p); in br_setlink()
1146 struct net_bridge *br = (struct net_bridge *)netdev_priv(dev); in br_dellink() local
1161 err = br_afspec(br, p, afspec, RTM_DELLINK, &changed, NULL); in br_dellink()
1166 br_ifinfo_notify(RTM_NEWLINK, br, p); in br_dellink()
1206 struct net_bridge *br = netdev_priv(brdev); in br_port_slave_changelink() local
1212 spin_lock_bh(&br->lock); in br_port_slave_changelink()
1214 spin_unlock_bh(&br->lock); in br_port_slave_changelink()
1279 struct net_bridge *br = netdev_priv(brdev); in br_changelink() local
1286 err = br_set_forward_delay(br, nla_get_u32(data[IFLA_BR_FORWARD_DELAY])); in br_changelink()
1292 err = br_set_hello_time(br, nla_get_u32(data[IFLA_BR_HELLO_TIME])); in br_changelink()
1298 err = br_set_max_age(br, nla_get_u32(data[IFLA_BR_MAX_AGE])); in br_changelink()
1304 err = br_set_ageing_time(br, nla_get_u32(data[IFLA_BR_AGEING_TIME])); in br_changelink()
1312 err = br_stp_set_enabled(br, stp_enabled, extack); in br_changelink()
1320 br_stp_set_bridge_priority(br, priority); in br_changelink()
1326 err = br_vlan_filter_toggle(br, vlan_filter, extack); in br_changelink()
1335 err = __br_vlan_set_proto(br, vlan_proto, extack); in br_changelink()
1343 err = __br_vlan_set_default_pvid(br, defpvid, extack); in br_changelink()
1351 err = br_vlan_set_stats(br, vlan_stats); in br_changelink()
1359 err = br_vlan_set_stats_per_port(br, per_port); in br_changelink()
1370 br->group_fwd_mask = fwd_mask; in br_changelink()
1385 spin_lock_bh(&br->lock); in br_changelink()
1386 memcpy(br->group_addr, new_addr, sizeof(br->group_addr)); in br_changelink()
1387 spin_unlock_bh(&br->lock); in br_changelink()
1388 br_opt_toggle(br, BROPT_GROUP_ADDR_SET, true); in br_changelink()
1389 br_recalculate_fwd_mask(br); in br_changelink()
1397 br_fdb_flush(br, &desc); in br_changelink()
1404 err = br_multicast_set_router(&br->multicast_ctx, in br_changelink()
1413 err = br_multicast_toggle(br, mcast_snooping, extack); in br_changelink()
1422 br_opt_toggle(br, BROPT_MULTICAST_QUERY_USE_IFADDR, !!val); in br_changelink()
1428 err = br_multicast_set_querier(&br->multicast_ctx, in br_changelink()
1435 br_warn(br, "the hash_elasticity option has been deprecated and is always %u\n", in br_changelink()
1439 br->hash_max = nla_get_u32(data[IFLA_BR_MCAST_HASH_MAX]); in br_changelink()
1444 br->multicast_ctx.multicast_last_member_count = val; in br_changelink()
1450 br->multicast_ctx.multicast_startup_query_count = val; in br_changelink()
1456 br->multicast_ctx.multicast_last_member_interval = clock_t_to_jiffies(val); in br_changelink()
1462 br->multicast_ctx.multicast_membership_interval = clock_t_to_jiffies(val); in br_changelink()
1468 br->multicast_ctx.multicast_querier_interval = clock_t_to_jiffies(val); in br_changelink()
1474 br_multicast_set_query_intvl(&br->multicast_ctx, val); in br_changelink()
1480 br->multicast_ctx.multicast_query_response_interval = clock_t_to_jiffies(val); in br_changelink()
1486 br_multicast_set_startup_query_intvl(&br->multicast_ctx, val); in br_changelink()
1493 br_opt_toggle(br, BROPT_MULTICAST_STATS_ENABLED, !!mcast_stats); in br_changelink()
1500 err = br_multicast_set_igmp_version(&br->multicast_ctx, in br_changelink()
1511 err = br_multicast_set_mld_version(&br->multicast_ctx, in br_changelink()
1522 br_opt_toggle(br, BROPT_NF_CALL_IPTABLES, !!val); in br_changelink()
1528 br_opt_toggle(br, BROPT_NF_CALL_IP6TABLES, !!val); in br_changelink()
1534 br_opt_toggle(br, BROPT_NF_CALL_ARPTABLES, !!val); in br_changelink()
1542 err = br_boolopt_multi_toggle(br, bm, extack); in br_changelink()
1550 WRITE_ONCE(br->fdb_max_learned, val); in br_changelink()
1560 struct net_bridge *br = netdev_priv(dev); in br_dev_newlink() local
1568 spin_lock_bh(&br->lock); in br_dev_newlink()
1569 br_stp_change_bridge_id(br, nla_data(tb[IFLA_ADDRESS])); in br_dev_newlink()
1570 spin_unlock_bh(&br->lock); in br_dev_newlink()
1640 struct net_bridge *br = netdev_priv(brdev); in br_fill_info() local
1641 u32 forward_delay = jiffies_to_clock_t(br->forward_delay); in br_fill_info()
1642 u32 hello_time = jiffies_to_clock_t(br->hello_time); in br_fill_info()
1643 u32 age_time = jiffies_to_clock_t(br->max_age); in br_fill_info()
1644 u32 ageing_time = jiffies_to_clock_t(br->ageing_time); in br_fill_info()
1645 u32 stp_enabled = br->stp_enabled; in br_fill_info()
1646 u16 priority = (br->bridge_id.prio[0] << 8) | br->bridge_id.prio[1]; in br_fill_info()
1647 u8 vlan_enabled = br_vlan_enabled(br->dev); in br_fill_info()
1651 clockval = br_timer_value(&br->hello_timer); in br_fill_info()
1654 clockval = br_timer_value(&br->tcn_timer); in br_fill_info()
1657 clockval = br_timer_value(&br->topology_change_timer); in br_fill_info()
1661 clockval = br_timer_value(&br->gc_work.timer); in br_fill_info()
1665 br_boolopt_multi_get(br, &bm); in br_fill_info()
1673 nla_put_u16(skb, IFLA_BR_GROUP_FWD_MASK, br->group_fwd_mask) || in br_fill_info()
1675 &br->bridge_id) || in br_fill_info()
1677 &br->designated_root) || in br_fill_info()
1678 nla_put_u16(skb, IFLA_BR_ROOT_PORT, br->root_port) || in br_fill_info()
1679 nla_put_u32(skb, IFLA_BR_ROOT_PATH_COST, br->root_path_cost) || in br_fill_info()
1680 nla_put_u8(skb, IFLA_BR_TOPOLOGY_CHANGE, br->topology_change) || in br_fill_info()
1682 br->topology_change_detected) || in br_fill_info()
1683 nla_put(skb, IFLA_BR_GROUP_ADDR, ETH_ALEN, br->group_addr) || in br_fill_info()
1686 atomic_read(&br->fdb_n_learned)) || in br_fill_info()
1687 nla_put_u32(skb, IFLA_BR_FDB_MAX_LEARNED, br->fdb_max_learned)) in br_fill_info()
1691 if (nla_put_be16(skb, IFLA_BR_VLAN_PROTOCOL, br->vlan_proto) || in br_fill_info()
1692 nla_put_u16(skb, IFLA_BR_VLAN_DEFAULT_PVID, br->default_pvid) || in br_fill_info()
1694 br_opt_get(br, BROPT_VLAN_STATS_ENABLED)) || in br_fill_info()
1696 br_opt_get(br, BROPT_VLAN_STATS_PER_PORT))) in br_fill_info()
1701 br->multicast_ctx.multicast_router) || in br_fill_info()
1703 br_opt_get(br, BROPT_MULTICAST_ENABLED)) || in br_fill_info()
1705 br_opt_get(br, BROPT_MULTICAST_QUERY_USE_IFADDR)) || in br_fill_info()
1707 br->multicast_ctx.multicast_querier) || in br_fill_info()
1709 br_opt_get(br, BROPT_MULTICAST_STATS_ENABLED)) || in br_fill_info()
1711 nla_put_u32(skb, IFLA_BR_MCAST_HASH_MAX, br->hash_max) || in br_fill_info()
1713 br->multicast_ctx.multicast_last_member_count) || in br_fill_info()
1715 br->multicast_ctx.multicast_startup_query_count) || in br_fill_info()
1717 br->multicast_ctx.multicast_igmp_version) || in br_fill_info()
1718 br_multicast_dump_querier_state(skb, &br->multicast_ctx, in br_fill_info()
1723 br->multicast_ctx.multicast_mld_version)) in br_fill_info()
1726 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_last_member_interval); in br_fill_info()
1730 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_membership_interval); in br_fill_info()
1734 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_querier_interval); in br_fill_info()
1738 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_query_interval); in br_fill_info()
1742 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_query_response_interval); in br_fill_info()
1746 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_startup_query_interval); in br_fill_info()
1753 br_opt_get(br, BROPT_NF_CALL_IPTABLES) ? 1 : 0) || in br_fill_info()
1755 br_opt_get(br, BROPT_NF_CALL_IP6TABLES) ? 1 : 0) || in br_fill_info()
1757 br_opt_get(br, BROPT_NF_CALL_ARPTABLES) ? 1 : 0)) in br_fill_info()
1769 struct net_bridge *br; in br_get_linkxstats_size() local
1774 br = netdev_priv(dev); in br_get_linkxstats_size()
1775 vg = br_vlan_group(br); in br_get_linkxstats_size()
1807 struct net_bridge *br; in br_fill_linkxstats() local
1813 br = netdev_priv(dev); in br_fill_linkxstats()
1814 vg = br_vlan_group(br); in br_fill_linkxstats()
1820 br = p->br; in br_fill_linkxstats()
1864 br_multicast_get_stats(br, p, nla_data(nla)); in br_fill_linkxstats()
1875 spin_lock_bh(&br->lock); in br_fill_linkxstats()
1877 spin_unlock_bh(&br->lock); in br_fill_linkxstats()