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()
125 if (!br) in br_get_link_af_size_filtered()
129 br_cfm_mep_count(br, &num_cfm_mep_infos); in br_get_link_af_size_filtered()
130 br_cfm_peer_mep_count(br, &num_cfm_peer_mep_infos); in br_get_link_af_size_filtered()
439 struct net_bridge *br; in br_fill_ifinfo() local
444 br = port->br; in br_fill_ifinfo()
446 br = netdev_priv(dev); in br_fill_ifinfo()
448 br_debug(br, "br_fill_info event %d port %s master %s\n", in br_fill_ifinfo()
449 event, dev->name, br->dev->name); in br_fill_ifinfo()
464 nla_put_u32(skb, IFLA_MASTER, br->dev->ifindex) || in br_fill_ifinfo()
503 vg = br_vlan_group_rcu(br); in br_fill_ifinfo()
524 if (!br_mrp_enabled(br) || port) in br_fill_ifinfo()
528 err = br_mrp_fill_info(skb, br); in br_fill_ifinfo()
539 if (!br_cfm_created(br) || port) in br_fill_ifinfo()
548 err = br_cfm_config_fill_info(skb, br); in br_fill_ifinfo()
556 err = br_cfm_status_fill_info(skb, br, getlink); in br_fill_ifinfo()
576 void br_info_notify(int event, const struct net_bridge *br, in br_info_notify() argument
585 if (WARN_ON(!port && !br)) in br_info_notify()
590 br = port->br; in br_info_notify()
593 dev = br->dev; in br_info_notify()
597 br_debug(br, "port %u(%s) event %d\n", port_no, dev->name, event); in br_info_notify()
617 void br_ifinfo_notify(int event, const struct net_bridge *br, in br_ifinfo_notify() argument
622 return br_info_notify(event, br, port, filter); in br_ifinfo_notify()
644 static int br_vlan_info(struct net_bridge *br, struct net_bridge_port *p, in br_vlan_info() argument
661 err = br_vlan_add(br, vinfo->vid, vinfo->flags, in br_vlan_info()
674 !br_vlan_delete(p->br, vinfo->vid)) in br_vlan_info()
676 } else if (!br_vlan_delete(br, vinfo->vid)) { in br_vlan_info()
685 int br_process_vlan_info(struct net_bridge *br, in br_process_vlan_info() argument
720 err = br_vlan_info(br, p, cmd, &tmp_vinfo, &curr_change, in br_process_vlan_info()
732 br_vlan_notify(br, p, v_change_start, in br_process_vlan_info()
740 br_vlan_notify(br, p, v_change_start, in br_process_vlan_info()
748 err = br_vlan_info(br, p, cmd, vinfo_curr, changed, extack); in br_process_vlan_info()
750 br_vlan_notify(br, p, vinfo_curr->vid, 0, rtm_cmd); in br_process_vlan_info()
755 static int br_afspec(struct net_bridge *br, in br_afspec() argument
777 err = br_process_vlan_tunnel_info(br, p, cmd, in br_afspec()
788 err = br_process_vlan_info(br, p, cmd, vinfo_curr, in br_afspec()
795 err = br_mrp_parse(br, p, attr, cmd, extack); in br_afspec()
800 err = br_cfm_parse(br, p, attr, cmd, extack); in br_afspec()
841 if (p->br->stp_enabled == BR_KERNEL_STP) in br_set_port_state()
852 br_port_state_selection(p->br); in br_set_port_state()
929 br_fdb_delete_by_port(p->br, p, 0, 0); in br_setport()
983 struct net_bridge *br = (struct net_bridge *)netdev_priv(dev); in br_setlink() local
1012 spin_lock_bh(&p->br->lock); in br_setlink()
1014 spin_unlock_bh(&p->br->lock); in br_setlink()
1020 spin_lock_bh(&p->br->lock); in br_setlink()
1022 spin_unlock_bh(&p->br->lock); in br_setlink()
1030 err = br_afspec(br, p, afspec, RTM_SETLINK, &changed, extack); in br_setlink()
1033 br_ifinfo_notify(RTM_NEWLINK, br, p); in br_setlink()
1041 struct net_bridge *br = (struct net_bridge *)netdev_priv(dev); in br_dellink() local
1056 err = br_afspec(br, p, afspec, RTM_DELLINK, &changed, NULL); in br_dellink()
1061 br_ifinfo_notify(RTM_NEWLINK, br, p); in br_dellink()
1101 struct net_bridge *br = netdev_priv(brdev); in br_port_slave_changelink() local
1107 spin_lock_bh(&br->lock); in br_port_slave_changelink()
1109 spin_unlock_bh(&br->lock); in br_port_slave_changelink()
1170 struct net_bridge *br = netdev_priv(brdev); in br_changelink() local
1177 err = br_set_forward_delay(br, nla_get_u32(data[IFLA_BR_FORWARD_DELAY])); in br_changelink()
1183 err = br_set_hello_time(br, nla_get_u32(data[IFLA_BR_HELLO_TIME])); in br_changelink()
1189 err = br_set_max_age(br, nla_get_u32(data[IFLA_BR_MAX_AGE])); in br_changelink()
1195 err = br_set_ageing_time(br, nla_get_u32(data[IFLA_BR_AGEING_TIME])); in br_changelink()
1203 err = br_stp_set_enabled(br, stp_enabled, extack); in br_changelink()
1211 br_stp_set_bridge_priority(br, priority); in br_changelink()
1217 err = br_vlan_filter_toggle(br, vlan_filter, extack); in br_changelink()
1226 err = __br_vlan_set_proto(br, vlan_proto, extack); in br_changelink()
1234 err = __br_vlan_set_default_pvid(br, defpvid, extack); in br_changelink()
1242 err = br_vlan_set_stats(br, vlan_stats); in br_changelink()
1250 err = br_vlan_set_stats_per_port(br, per_port); in br_changelink()
1261 br->group_fwd_mask = fwd_mask; in br_changelink()
1276 spin_lock_bh(&br->lock); in br_changelink()
1277 memcpy(br->group_addr, new_addr, sizeof(br->group_addr)); in br_changelink()
1278 spin_unlock_bh(&br->lock); in br_changelink()
1279 br_opt_toggle(br, BROPT_GROUP_ADDR_SET, true); in br_changelink()
1280 br_recalculate_fwd_mask(br); in br_changelink()
1284 br_fdb_flush(br); in br_changelink()
1290 err = br_multicast_set_router(&br->multicast_ctx, in br_changelink()
1299 err = br_multicast_toggle(br, mcast_snooping, extack); in br_changelink()
1308 br_opt_toggle(br, BROPT_MULTICAST_QUERY_USE_IFADDR, !!val); in br_changelink()
1314 err = br_multicast_set_querier(&br->multicast_ctx, in br_changelink()
1321 br_warn(br, "the hash_elasticity option has been deprecated and is always %u\n", in br_changelink()
1325 br->hash_max = nla_get_u32(data[IFLA_BR_MCAST_HASH_MAX]); in br_changelink()
1330 br->multicast_ctx.multicast_last_member_count = val; in br_changelink()
1336 br->multicast_ctx.multicast_startup_query_count = val; in br_changelink()
1342 br->multicast_ctx.multicast_last_member_interval = clock_t_to_jiffies(val); in br_changelink()
1348 br->multicast_ctx.multicast_membership_interval = clock_t_to_jiffies(val); in br_changelink()
1354 br->multicast_ctx.multicast_querier_interval = clock_t_to_jiffies(val); in br_changelink()
1360 br_multicast_set_query_intvl(&br->multicast_ctx, val); in br_changelink()
1366 br->multicast_ctx.multicast_query_response_interval = clock_t_to_jiffies(val); in br_changelink()
1372 br_multicast_set_startup_query_intvl(&br->multicast_ctx, val); in br_changelink()
1379 br_opt_toggle(br, BROPT_MULTICAST_STATS_ENABLED, !!mcast_stats); in br_changelink()
1386 err = br_multicast_set_igmp_version(&br->multicast_ctx, in br_changelink()
1397 err = br_multicast_set_mld_version(&br->multicast_ctx, in br_changelink()
1408 br_opt_toggle(br, BROPT_NF_CALL_IPTABLES, !!val); in br_changelink()
1414 br_opt_toggle(br, BROPT_NF_CALL_IP6TABLES, !!val); in br_changelink()
1420 br_opt_toggle(br, BROPT_NF_CALL_ARPTABLES, !!val); in br_changelink()
1428 err = br_boolopt_multi_toggle(br, bm, extack); in br_changelink()
1440 struct net_bridge *br = netdev_priv(dev); in br_dev_newlink() local
1448 spin_lock_bh(&br->lock); in br_dev_newlink()
1449 br_stp_change_bridge_id(br, nla_data(tb[IFLA_ADDRESS])); in br_dev_newlink()
1450 spin_unlock_bh(&br->lock); in br_dev_newlink()
1518 struct net_bridge *br = netdev_priv(brdev); in br_fill_info() local
1519 u32 forward_delay = jiffies_to_clock_t(br->forward_delay); in br_fill_info()
1520 u32 hello_time = jiffies_to_clock_t(br->hello_time); in br_fill_info()
1521 u32 age_time = jiffies_to_clock_t(br->max_age); in br_fill_info()
1522 u32 ageing_time = jiffies_to_clock_t(br->ageing_time); in br_fill_info()
1523 u32 stp_enabled = br->stp_enabled; in br_fill_info()
1524 u16 priority = (br->bridge_id.prio[0] << 8) | br->bridge_id.prio[1]; in br_fill_info()
1525 u8 vlan_enabled = br_vlan_enabled(br->dev); in br_fill_info()
1529 clockval = br_timer_value(&br->hello_timer); in br_fill_info()
1532 clockval = br_timer_value(&br->tcn_timer); in br_fill_info()
1535 clockval = br_timer_value(&br->topology_change_timer); in br_fill_info()
1539 clockval = br_timer_value(&br->gc_work.timer); in br_fill_info()
1543 br_boolopt_multi_get(br, &bm); in br_fill_info()
1551 nla_put_u16(skb, IFLA_BR_GROUP_FWD_MASK, br->group_fwd_mask) || in br_fill_info()
1553 &br->bridge_id) || in br_fill_info()
1555 &br->designated_root) || in br_fill_info()
1556 nla_put_u16(skb, IFLA_BR_ROOT_PORT, br->root_port) || in br_fill_info()
1557 nla_put_u32(skb, IFLA_BR_ROOT_PATH_COST, br->root_path_cost) || in br_fill_info()
1558 nla_put_u8(skb, IFLA_BR_TOPOLOGY_CHANGE, br->topology_change) || in br_fill_info()
1560 br->topology_change_detected) || in br_fill_info()
1561 nla_put(skb, IFLA_BR_GROUP_ADDR, ETH_ALEN, br->group_addr) || in br_fill_info()
1566 if (nla_put_be16(skb, IFLA_BR_VLAN_PROTOCOL, br->vlan_proto) || in br_fill_info()
1567 nla_put_u16(skb, IFLA_BR_VLAN_DEFAULT_PVID, br->default_pvid) || in br_fill_info()
1569 br_opt_get(br, BROPT_VLAN_STATS_ENABLED)) || in br_fill_info()
1571 br_opt_get(br, BROPT_VLAN_STATS_PER_PORT))) in br_fill_info()
1576 br->multicast_ctx.multicast_router) || in br_fill_info()
1578 br_opt_get(br, BROPT_MULTICAST_ENABLED)) || in br_fill_info()
1580 br_opt_get(br, BROPT_MULTICAST_QUERY_USE_IFADDR)) || in br_fill_info()
1582 br->multicast_ctx.multicast_querier) || in br_fill_info()
1584 br_opt_get(br, BROPT_MULTICAST_STATS_ENABLED)) || in br_fill_info()
1586 nla_put_u32(skb, IFLA_BR_MCAST_HASH_MAX, br->hash_max) || in br_fill_info()
1588 br->multicast_ctx.multicast_last_member_count) || in br_fill_info()
1590 br->multicast_ctx.multicast_startup_query_count) || in br_fill_info()
1592 br->multicast_ctx.multicast_igmp_version) || in br_fill_info()
1593 br_multicast_dump_querier_state(skb, &br->multicast_ctx, in br_fill_info()
1598 br->multicast_ctx.multicast_mld_version)) in br_fill_info()
1601 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_last_member_interval); in br_fill_info()
1605 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_membership_interval); in br_fill_info()
1609 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_querier_interval); in br_fill_info()
1613 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_query_interval); in br_fill_info()
1617 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_query_response_interval); in br_fill_info()
1621 clockval = jiffies_to_clock_t(br->multicast_ctx.multicast_startup_query_interval); in br_fill_info()
1628 br_opt_get(br, BROPT_NF_CALL_IPTABLES) ? 1 : 0) || in br_fill_info()
1630 br_opt_get(br, BROPT_NF_CALL_IP6TABLES) ? 1 : 0) || in br_fill_info()
1632 br_opt_get(br, BROPT_NF_CALL_ARPTABLES) ? 1 : 0)) in br_fill_info()
1644 struct net_bridge *br; in br_get_linkxstats_size() local
1649 br = netdev_priv(dev); in br_get_linkxstats_size()
1650 vg = br_vlan_group(br); in br_get_linkxstats_size()
1682 struct net_bridge *br; in br_fill_linkxstats() local
1688 br = netdev_priv(dev); in br_fill_linkxstats()
1689 vg = br_vlan_group(br); in br_fill_linkxstats()
1695 br = p->br; in br_fill_linkxstats()
1739 br_multicast_get_stats(br, p, nla_data(nla)); in br_fill_linkxstats()
1750 spin_lock_bh(&br->lock); in br_fill_linkxstats()
1752 spin_unlock_bh(&br->lock); in br_fill_linkxstats()