Lines Matching full:br
86 list_for_each_entry_rcu(p, &brmctx->br->port_list, list) {
190 lockdep_is_held(&p->key.port->br->multicast_lock)) {
249 ifindex = mp->br->dev->ifindex;
280 dump_srcs_mode = !!(mp->br->multicast_ctx.multicast_igmp_version == 3);
290 dump_srcs_mode = !!(mp->br->multicast_ctx.multicast_mld_version == 2);
324 struct net_bridge *br = netdev_priv(dev);
332 hlist_for_each_entry_rcu(mp, &br->mdb_list, mdb_node) {
385 struct net_bridge *br = netdev_priv(dev);
405 err = br_rports_fill_info(skb, &br->multicast_ctx);
476 if (pg->key.port->br->multicast_ctx.multicast_igmp_version == 2)
485 if (pg->key.port->br->multicast_ctx.multicast_mld_version == 1)
708 __br_mdb_choose_context(struct net_bridge *br,
715 if (!br_opt_get(br, BROPT_MCAST_VLAN_SNOOPING_ENABLED)) {
716 brmctx = &br->multicast_ctx;
725 v = br_vlan_find(br_vlan_group(br), entry->vid);
755 br_mdb_notify(cfg->br->dev, mp, pg, RTM_NEWMDB);
771 (p = mlock_dereference(*pp, cfg->br)) != NULL;
794 br_mdb_notify(cfg->br->dev, mp, p, RTM_NEWMDB);
805 star_mp = br_mdb_ip_get(cfg->br, &star_group);
825 sgmp = br_multicast_new_group(cfg->br, &sg_ip);
837 sg_cfg.br = cfg->br;
976 br_mdb_notify(cfg->br->dev, mp, pg, RTM_NEWMDB);
996 (p = mlock_dereference(*pp, cfg->br)) != NULL;
1025 br_mdb_notify(cfg->br->dev, mp, p, RTM_NEWMDB);
1046 struct net_bridge *br = cfg->br;
1051 brmctx = __br_mdb_choose_context(br, entry, extack);
1055 mp = br_multicast_new_group(br, &group);
1067 br_mdb_notify(br->dev, mp, NULL, RTM_NEWMDB);
1086 spin_lock_bh(&cfg->br->multicast_lock);
1088 spin_unlock_bh(&cfg->br->multicast_lock);
1242 cfg->br = netdev_priv(dev);
1244 if (!netif_running(cfg->br->dev)) {
1249 if (!br_opt_get(cfg->br, BROPT_MULTICAST_ENABLED)) {
1256 if (cfg->entry->ifindex != cfg->br->dev->ifindex) {
1271 if (cfg->p->br != cfg->br) {
1335 vg = br_vlan_group(cfg.br);
1341 if (br_vlan_enabled(cfg.br->dev) && vg && cfg.entry->vid == 0) {
1361 struct net_bridge *br = cfg->br;
1368 spin_lock_bh(&br->multicast_lock);
1369 mp = br_mdb_ip_get(br, &ip);
1374 if (entry->ifindex == mp->br->dev->ifindex && mp->host_joined) {
1377 br_mdb_notify(br->dev, mp, NULL, RTM_DELMDB);
1378 if (!mp->ports && netif_running(br->dev))
1384 (p = mlock_dereference(*pp, br)) != NULL;
1395 spin_unlock_bh(&br->multicast_lock);
1414 vg = br_vlan_group(cfg.br);
1419 if (br_vlan_enabled(cfg.br->dev) && vg && cfg.entry->vid == 0) {
1476 static void br_mdb_flush_host(struct net_bridge *br,
1482 if (desc->port_ifindex && desc->port_ifindex != br->dev->ifindex)
1493 if (!mp->ports && netif_running(br->dev))
1497 static void br_mdb_flush_pgs(struct net_bridge *br,
1504 for (pp = &mp->ports; (p = mlock_dereference(*pp, br)) != NULL;) {
1529 static void br_mdb_flush(struct net_bridge *br,
1534 spin_lock_bh(&br->multicast_lock);
1539 hlist_for_each_entry(mp, &br->mdb_list, mdb_node) {
1543 br_mdb_flush_host(br, mp, desc);
1544 br_mdb_flush_pgs(br, mp, desc);
1547 spin_unlock_bh(&br->multicast_lock);
1553 struct net_bridge *br = netdev_priv(dev);
1561 br_mdb_flush(br, &desc);
1615 for (pg = mlock_dereference(mp->ports, mp->br); pg;
1616 pg = mlock_dereference(pg->next, mp->br))
1639 bpm->ifindex = mp->br->dev->ifindex;
1657 for (pg = mlock_dereference(mp->ports, mp->br); pg;
1658 pg = mlock_dereference(pg->next, mp->br)) {
1678 struct net_bridge *br = netdev_priv(dev);
1692 spin_lock_bh(&br->multicast_lock);
1694 mp = br_mdb_ip_get(br, &group);
1713 spin_unlock_bh(&br->multicast_lock);
1720 spin_unlock_bh(&br->multicast_lock);