Lines Matching refs:mdb

516 static void br_switchdev_mdb_populate(struct switchdev_obj_port_mdb *mdb,  in br_switchdev_mdb_populate()  argument
520 ip_eth_mc_map(mp->addr.dst.ip4, mdb->addr); in br_switchdev_mdb_populate()
523 ipv6_eth_mc_map(&mp->addr.dst.ip6, mdb->addr); in br_switchdev_mdb_populate()
526 ether_addr_copy(mdb->addr, mp->addr.dst.mac_addr); in br_switchdev_mdb_populate()
528 mdb->vid = mp->addr.vid; in br_switchdev_mdb_populate()
536 struct switchdev_obj_port_mdb mdb = { in br_switchdev_host_mdb_one() local
544 br_switchdev_mdb_populate(&mdb, mp); in br_switchdev_host_mdb_one()
548 switchdev_port_obj_add(lower_dev, &mdb.obj, NULL); in br_switchdev_host_mdb_one()
551 switchdev_port_obj_del(lower_dev, &mdb.obj); in br_switchdev_host_mdb_one()
568 const struct switchdev_obj_port_mdb *mdb, in br_switchdev_mdb_replay_one() argument
578 .obj = &mdb->obj, in br_switchdev_mdb_replay_one()
591 struct switchdev_obj_port_mdb *mdb; in br_switchdev_mdb_queue_one() local
593 mdb = kzalloc(sizeof(*mdb), GFP_ATOMIC); in br_switchdev_mdb_queue_one()
594 if (!mdb) in br_switchdev_mdb_queue_one()
597 mdb->obj.id = id; in br_switchdev_mdb_queue_one()
598 mdb->obj.orig_dev = orig_dev; in br_switchdev_mdb_queue_one()
599 br_switchdev_mdb_populate(mdb, mp); in br_switchdev_mdb_queue_one()
600 list_add_tail(&mdb->obj.list, mdb_list); in br_switchdev_mdb_queue_one()
611 struct switchdev_obj_port_mdb mdb = { in br_switchdev_mdb_notify() local
621 br_switchdev_mdb_populate(&mdb, mp); in br_switchdev_mdb_notify()
623 mdb.obj.orig_dev = pg->key.port->dev; in br_switchdev_mdb_notify()
631 mdb.obj.complete_priv = complete_info; in br_switchdev_mdb_notify()
632 mdb.obj.complete = br_switchdev_mdb_complete; in br_switchdev_mdb_notify()
633 if (switchdev_port_obj_add(pg->key.port->dev, &mdb.obj, NULL)) in br_switchdev_mdb_notify()
637 switchdev_port_obj_del(pg->key.port->dev, &mdb.obj); in br_switchdev_mdb_notify()