Lines Matching refs:mdb

514 static void br_switchdev_mdb_populate(struct switchdev_obj_port_mdb *mdb,  in br_switchdev_mdb_populate()  argument
518 ip_eth_mc_map(mp->addr.dst.ip4, mdb->addr); in br_switchdev_mdb_populate()
521 ipv6_eth_mc_map(&mp->addr.dst.ip6, mdb->addr); in br_switchdev_mdb_populate()
524 ether_addr_copy(mdb->addr, mp->addr.dst.mac_addr); in br_switchdev_mdb_populate()
526 mdb->vid = mp->addr.vid; in br_switchdev_mdb_populate()
534 struct switchdev_obj_port_mdb mdb = { in br_switchdev_host_mdb_one() local
542 br_switchdev_mdb_populate(&mdb, mp); in br_switchdev_host_mdb_one()
546 switchdev_port_obj_add(lower_dev, &mdb.obj, NULL); in br_switchdev_host_mdb_one()
549 switchdev_port_obj_del(lower_dev, &mdb.obj); in br_switchdev_host_mdb_one()
566 const struct switchdev_obj_port_mdb *mdb, in br_switchdev_mdb_replay_one() argument
576 .obj = &mdb->obj, in br_switchdev_mdb_replay_one()
589 struct switchdev_obj_port_mdb *mdb; in br_switchdev_mdb_queue_one() local
591 mdb = kzalloc(sizeof(*mdb), GFP_ATOMIC); in br_switchdev_mdb_queue_one()
592 if (!mdb) in br_switchdev_mdb_queue_one()
595 mdb->obj.id = id; in br_switchdev_mdb_queue_one()
596 mdb->obj.orig_dev = orig_dev; in br_switchdev_mdb_queue_one()
597 br_switchdev_mdb_populate(mdb, mp); in br_switchdev_mdb_queue_one()
598 list_add_tail(&mdb->obj.list, mdb_list); in br_switchdev_mdb_queue_one()
609 struct switchdev_obj_port_mdb mdb = { in br_switchdev_mdb_notify() local
619 br_switchdev_mdb_populate(&mdb, mp); in br_switchdev_mdb_notify()
621 mdb.obj.orig_dev = pg->key.port->dev; in br_switchdev_mdb_notify()
629 mdb.obj.complete_priv = complete_info; in br_switchdev_mdb_notify()
630 mdb.obj.complete = br_switchdev_mdb_complete; in br_switchdev_mdb_notify()
631 if (switchdev_port_obj_add(pg->key.port->dev, &mdb.obj, NULL)) in br_switchdev_mdb_notify()
635 switchdev_port_obj_del(pg->key.port->dev, &mdb.obj); in br_switchdev_mdb_notify()