fdb_entry
struct fdb_entry entry;
struct fdb_dump_entry fdb_entry;
fdb_dump_size = ethsw->sw_attr.max_fdb_entries * sizeof(fdb_entry);
fdb_entry = fdb_entries[i];
err = cb(port_priv, &fdb_entry, data);
struct fdb_dump_entry *fdb_entry,
if (!dpaa2_switch_port_fdb_valid_entry(fdb_entry, port_priv))
return dpaa2_switch_fdb_dump_nl(fdb_entry, data);
struct fdb_dump_entry *fdb_entry,
if (!dpaa2_switch_port_fdb_valid_entry(fdb_entry, port_priv))
if (!(fdb_entry->type & DPSW_FDB_ENTRY_TYPE_DYNAMIC))
if (fdb_entry->type & DPSW_FDB_ENTRY_TYPE_UNICAST)
dpaa2_switch_port_fdb_del_uc(port_priv, fdb_entry->mac_addr);
dpaa2_switch_port_fdb_del_mc(port_priv, fdb_entry->mac_addr);
struct fdb_dump_entry *fdb_entry,
struct ice_esw_br_fdb_entry *fdb_entry)
rhashtable_remove_fast(&bridge->fdb_ht, &fdb_entry->ht_node,
list_del(&fdb_entry->list);
ice_eswitch_br_flow_delete(pf, fdb_entry->flow);
kfree(fdb_entry);
struct ice_esw_br_fdb_entry *fdb_entry;
fdb_entry = ice_eswitch_br_fdb_find(bridge, mac, vid);
if (!fdb_entry) {
trace_ice_eswitch_br_fdb_entry_find_and_delete(fdb_entry);
ice_eswitch_br_fdb_entry_notify_and_cleanup(bridge, fdb_entry);
struct ice_esw_br_fdb_entry *fdb_entry;
fdb_entry = ice_eswitch_br_fdb_find(bridge, mac, vid);
if (fdb_entry)
ice_eswitch_br_fdb_entry_notify_and_cleanup(bridge, fdb_entry);
fdb_entry = kzalloc_obj(*fdb_entry);
if (!fdb_entry) {
ether_addr_copy(fdb_entry->data.addr, mac);
fdb_entry->data.vid = vid;
fdb_entry->br_port = br_port;
fdb_entry->flow = flow;
fdb_entry->dev = netdev;
fdb_entry->last_use = jiffies;
fdb_entry->flags |= ICE_ESWITCH_BR_FDB_ADDED_BY_USER;
err = rhashtable_insert_fast(&bridge->fdb_ht, &fdb_entry->ht_node,
list_add(&fdb_entry->list, &bridge->fdb_list);
trace_ice_eswitch_br_fdb_entry_create(fdb_entry);
kfree(fdb_entry);
struct ice_esw_br_fdb_entry *fdb_entry, *tmp;
list_for_each_entry_safe(fdb_entry, tmp, &bridge->fdb_list, list) {
if (vlan->vid == fdb_entry->data.vid)
ice_eswitch_br_fdb_entry_delete(bridge, fdb_entry);
struct ice_esw_br_fdb_entry *fdb_entry, *tmp;
list_for_each_entry_safe(fdb_entry, tmp, &bridge->fdb_list, list) {
if (br_port == fdb_entry->br_port)
ice_eswitch_br_fdb_entry_delete(bridge, fdb_entry);
lan966x_mac_cpu_forget(lan966x, fdb_entry->mac, fdb_entry->vid);
struct lan966x_fdb_entry *fdb_entry, *tmp;
list_for_each_entry_safe(fdb_entry, tmp, &lan966x->fdb_entries, list) {
list_del(&fdb_entry->list);
kfree(fdb_entry);
struct lan966x_fdb_entry *fdb_entry;
list_for_each_entry(fdb_entry, &lan966x->fdb_entries, list) {
if (fdb_entry->vid == fdb_info->vid &&
ether_addr_equal(fdb_entry->mac, fdb_info->addr))
return fdb_entry;
struct lan966x_fdb_entry *fdb_entry;
fdb_entry = lan966x_fdb_find_entry(lan966x, fdb_info);
if (fdb_entry) {
fdb_entry->references++;
fdb_entry = kzalloc_obj(*fdb_entry);
if (!fdb_entry)
ether_addr_copy(fdb_entry->mac, fdb_info->addr);
fdb_entry->vid = fdb_info->vid;
fdb_entry->references = 1;
list_add_tail(&fdb_entry->list, &lan966x->fdb_entries);
struct lan966x_fdb_entry *fdb_entry, *tmp;
list_for_each_entry_safe(fdb_entry, tmp, &lan966x->fdb_entries,
if (fdb_entry->vid == fdb_info->vid &&
ether_addr_equal(fdb_entry->mac, fdb_info->addr)) {
fdb_entry->references--;
if (!fdb_entry->references) {
list_del(&fdb_entry->list);
kfree(fdb_entry);
struct lan966x_fdb_entry *fdb_entry;
list_for_each_entry(fdb_entry, &lan966x->fdb_entries, list) {
if (fdb_entry->vid != vid)
lan966x_mac_cpu_learn(lan966x, fdb_entry->mac, fdb_entry->vid);
struct lan966x_fdb_entry *fdb_entry;
list_for_each_entry(fdb_entry, &lan966x->fdb_entries, list) {
if (fdb_entry->vid != vid)
struct ofdpa_fdb_tbl_entry *fdb_entry;
hash_for_each_safe(ofdpa->fdb_tbl, bkt, tmp, fdb_entry, entry)
hash_del(&fdb_entry->entry);