| /drivers/net/ethernet/microchip/lan966x/ |
| A D | lan966x_fdb.c | 144 fdb_info = &fdb_work->fdb_info; in lan966x_fdb_port_event_work() 151 fdb_info->vid); in lan966x_fdb_port_event_work() 157 fdb_info->vid); in lan966x_fdb_port_event_work() 169 fdb_info = &fdb_work->fdb_info; in lan966x_fdb_bridge_event_work() 183 fdb_info->vid)) in lan966x_fdb_bridge_event_work() 187 fdb_info->vid); in lan966x_fdb_bridge_event_work() 192 fdb_info->vid)) in lan966x_fdb_bridge_event_work() 213 fdb_info = &fdb_work->fdb_info; in lan966x_fdb_lag_event_work() 225 lan966x_mac_del_entry(lan966x, fdb_info->addr, fdb_info->vid); in lan966x_fdb_lag_event_work() 274 memcpy(&fdb_work->fdb_info, fdb_info, sizeof(fdb_work->fdb_info)); in lan966x_handle_fdb() [all …]
|
| A D | lan966x_main.h | 521 const struct switchdev_notifier_fdb_info *fdb_info);
|
| /drivers/net/ethernet/mellanox/mlx5/core/en/rep/ |
| A D | bridge.c | 369 &fdb_work->fdb_info; in mlx5_esw_bridge_switchdev_fdb_event_work() 383 fdb_info); in mlx5_esw_bridge_switchdev_fdb_event_work() 386 fdb_info); in mlx5_esw_bridge_switchdev_fdb_event_work() 406 memcpy(&work->fdb_info, fdb_info, sizeof(work->fdb_info)); in mlx5_esw_bridge_init_switchdev_fdb_work() 414 work->fdb_info.addr = addr; in mlx5_esw_bridge_init_switchdev_fdb_work() 458 fdb_info = container_of(info, in mlx5_esw_bridge_switchdev_event() 462 fdb_info); in mlx5_esw_bridge_switchdev_event() 469 fdb_info = container_of(info, in mlx5_esw_bridge_switchdev_event() 478 fdb_info); in mlx5_esw_bridge_switchdev_event() 482 fdb_info = container_of(info, in mlx5_esw_bridge_switchdev_event() [all …]
|
| /drivers/net/ethernet/microchip/sparx5/ |
| A D | sparx5_switchdev.c | 17 struct switchdev_notifier_fdb_info fdb_info; member 332 fdb_info = &switchdev_work->fdb_info; in sparx5_switchdev_bridge_fdb_event_work() 337 if (fdb_info->vid == 0) in sparx5_switchdev_bridge_fdb_event_work() 340 vid = fdb_info->vid; in sparx5_switchdev_bridge_fdb_event_work() 347 fdb_info->addr, vid); in sparx5_switchdev_bridge_fdb_event_work() 350 fdb_info->addr, vid); in sparx5_switchdev_bridge_fdb_event_work() 358 kfree(switchdev_work->fdb_info.addr); in sparx5_switchdev_bridge_fdb_event_work() 397 fdb_info = container_of(info, in sparx5_switchdev_event() 402 memcpy(&switchdev_work->fdb_info, ptr, in sparx5_switchdev_event() 405 if (!switchdev_work->fdb_info.addr) in sparx5_switchdev_event() [all …]
|
| /drivers/net/ethernet/ti/icssg/ |
| A D | icssg_switchdev.c | 21 struct switchdev_notifier_fdb_info fdb_info; member 137 fdb = &switchdev_work->fdb_info; in prueth_switchdev_event_work() 154 fdb = &switchdev_work->fdb_info; in prueth_switchdev_event_work() 172 kfree(switchdev_work->fdb_info.addr); in prueth_switchdev_event_work() 182 struct switchdev_notifier_fdb_info *fdb_info = ptr; in prueth_switchdev_event() local 207 memcpy(&switchdev_work->fdb_info, ptr, in prueth_switchdev_event() 208 sizeof(switchdev_work->fdb_info)); in prueth_switchdev_event() 209 switchdev_work->fdb_info.addr = kzalloc(ETH_ALEN, GFP_ATOMIC); in prueth_switchdev_event() 210 if (!switchdev_work->fdb_info.addr) in prueth_switchdev_event() 212 ether_addr_copy((u8 *)switchdev_work->fdb_info.addr, in prueth_switchdev_event() [all …]
|
| /drivers/net/ethernet/ti/ |
| A D | cpsw_switchdev.c | 22 struct switchdev_notifier_fdb_info fdb_info; member 388 fdb = &switchdev_work->fdb_info; in cpsw_switchdev_event_work() 404 fdb = &switchdev_work->fdb_info; in cpsw_switchdev_event_work() 423 kfree(switchdev_work->fdb_info.addr); in cpsw_switchdev_event_work() 433 struct switchdev_notifier_fdb_info *fdb_info = ptr; in cpsw_switchdev_event() local 459 memcpy(&switchdev_work->fdb_info, ptr, in cpsw_switchdev_event() 460 sizeof(switchdev_work->fdb_info)); in cpsw_switchdev_event() 461 switchdev_work->fdb_info.addr = kzalloc(ETH_ALEN, GFP_ATOMIC); in cpsw_switchdev_event() 462 if (!switchdev_work->fdb_info.addr) in cpsw_switchdev_event() 464 ether_addr_copy((u8 *)switchdev_work->fdb_info.addr, in cpsw_switchdev_event() [all …]
|
| A D | am65-cpsw-switchdev.c | 20 struct switchdev_notifier_fdb_info fdb_info; member 378 fdb = &switchdev_work->fdb_info; in am65_cpsw_switchdev_event_work() 394 fdb = &switchdev_work->fdb_info; in am65_cpsw_switchdev_event_work() 413 kfree(switchdev_work->fdb_info.addr); in am65_cpsw_switchdev_event_work() 425 struct switchdev_notifier_fdb_info *fdb_info = ptr; in am65_cpsw_switchdev_event() local 449 memcpy(&switchdev_work->fdb_info, ptr, in am65_cpsw_switchdev_event() 450 sizeof(switchdev_work->fdb_info)); in am65_cpsw_switchdev_event() 451 switchdev_work->fdb_info.addr = kzalloc(ETH_ALEN, GFP_ATOMIC); in am65_cpsw_switchdev_event() 452 if (!switchdev_work->fdb_info.addr) in am65_cpsw_switchdev_event() 454 ether_addr_copy((u8 *)switchdev_work->fdb_info.addr, in am65_cpsw_switchdev_event() [all …]
|
| /drivers/net/ethernet/marvell/prestera/ |
| A D | prestera_switchdev.c | 24 struct switchdev_notifier_fdb_info fdb_info; member 1233 vid = fdb_info->vid; in prestera_port_fdb_set() 1264 fdb_info = &swdev_work->fdb_info; in prestera_fdb_event_work() 1265 if (!fdb_info->added_by_user || fdb_info->is_local) in prestera_fdb_event_work() 1276 fdb_info = &swdev_work->fdb_info; in prestera_fdb_event_work() 1284 kfree(swdev_work->fdb_info.addr); in prestera_fdb_event_work() 1326 fdb_info = container_of(info, in prestera_switchdev_event() 1331 memcpy(&swdev_work->fdb_info, ptr, in prestera_switchdev_event() 1332 sizeof(swdev_work->fdb_info)); in prestera_switchdev_event() 1335 if (!swdev_work->fdb_info.addr) in prestera_switchdev_event() [all …]
|
| /drivers/net/ethernet/mellanox/mlx5/core/esw/ |
| A D | bridge.h | 64 struct switchdev_notifier_fdb_info *fdb_info); 67 struct switchdev_notifier_fdb_info *fdb_info); 70 struct switchdev_notifier_fdb_info *fdb_info); 73 struct switchdev_notifier_fdb_info *fdb_info);
|
| A D | bridge.c | 1733 struct switchdev_notifier_fdb_info *fdb_info) in mlx5_esw_bridge_fdb_update_used() argument 1742 entry = mlx5_esw_bridge_fdb_lookup(bridge, fdb_info->addr, fdb_info->vid); in mlx5_esw_bridge_fdb_update_used() 1746 fdb_info->addr, fdb_info->vid, vport_num); in mlx5_esw_bridge_fdb_update_used() 1755 struct switchdev_notifier_fdb_info *fdb_info) in mlx5_esw_bridge_fdb_mark_deleted() argument 1764 entry = mlx5_esw_bridge_fdb_lookup(bridge, fdb_info->addr, fdb_info->vid); in mlx5_esw_bridge_fdb_mark_deleted() 1768 fdb_info->addr, fdb_info->vid, vport_num); in mlx5_esw_bridge_fdb_mark_deleted() 1777 struct switchdev_notifier_fdb_info *fdb_info) in mlx5_esw_bridge_fdb_create() argument 1789 fdb_info->vid, fdb_info->added_by_user, in mlx5_esw_bridge_fdb_create() 1806 struct switchdev_notifier_fdb_info *fdb_info) in mlx5_esw_bridge_fdb_remove() argument 1816 entry = mlx5_esw_bridge_fdb_lookup(bridge, fdb_info->addr, fdb_info->vid); in mlx5_esw_bridge_fdb_remove() [all …]
|
| /drivers/net/ethernet/intel/ice/ |
| A D | ice_eswitch_br.c | 348 struct switchdev_notifier_fdb_info fdb_info = { in ice_eswitch_br_fdb_offload_notify() local 354 call_switchdev_notifiers(val, dev, &fdb_info.info, NULL); in ice_eswitch_br_fdb_offload_notify() 470 kfree(fdb_work->fdb_info.addr); in ice_eswitch_br_fdb_work_dealloc() 478 bool added_by_user = fdb_work->fdb_info.added_by_user; in ice_eswitch_br_fdb_event_work() 479 const unsigned char *mac = fdb_work->fdb_info.addr; in ice_eswitch_br_fdb_event_work() 480 u16 vid = fdb_work->fdb_info.vid; in ice_eswitch_br_fdb_event_work() 521 memcpy(&work->fdb_info, fdb_info, sizeof(work->fdb_info)); in ice_eswitch_br_fdb_work_alloc() 529 ether_addr_copy(mac, fdb_info->addr); in ice_eswitch_br_fdb_work_alloc() 530 work->fdb_info.addr = mac; in ice_eswitch_br_fdb_work_alloc() 542 struct switchdev_notifier_fdb_info *fdb_info; in ice_eswitch_br_switchdev_event() local [all …]
|
| A D | ice_eswitch_br.h | 82 struct switchdev_notifier_fdb_info fdb_info; member
|
| /drivers/net/vxlan/ |
| A D | vxlan_core.c | 302 fdb_info->vni = fdb->key.vni; in vxlan_fdb_switchdev_notifier_info() 487 &fdb_info); in vxlan_fdb_notify_one() 4741 f = vxlan_find_mac(vxlan, fdb_info->eth_addr, fdb_info->vni); in vxlan_fdb_offloaded_set() 4769 err = vxlan_fdb_update(vxlan, fdb_info->eth_addr, &fdb_info->remote_ip, in vxlan_fdb_external_learn_add() 4773 fdb_info->vni, in vxlan_fdb_external_learn_add() 4793 f = vxlan_find_mac(vxlan, fdb_info->eth_addr, fdb_info->vni); in vxlan_fdb_external_learn_del() 4798 fdb_info->remote_ip, in vxlan_fdb_external_learn_del() 4800 fdb_info->vni, in vxlan_fdb_external_learn_del() 4801 fdb_info->remote_vni, in vxlan_fdb_external_learn_del() 4822 fdb_info = ptr; in vxlan_switchdev_event() [all …]
|
| /drivers/net/ethernet/mellanox/mlxsw/ |
| A D | spectrum_switchdev.c | 1872 fdb_info->vid); in mlxsw_sp_port_fdb_set() 1887 fdb_info->addr, fid_index, in mlxsw_sp_port_fdb_set() 3425 fdb_info = &switchdev_work->fdb_info; in mlxsw_sp_switchdev_bridge_vxlan_fdb_event() 3533 fdb_info = &switchdev_work->fdb_info; in mlxsw_sp_switchdev_bridge_fdb_event_work() 3534 if (!fdb_info->added_by_user || fdb_info->is_local) in mlxsw_sp_switchdev_bridge_fdb_event_work() 3540 fdb_info->addr, in mlxsw_sp_switchdev_bridge_fdb_event_work() 3544 fdb_info = &switchdev_work->fdb_info; in mlxsw_sp_switchdev_bridge_fdb_event_work() 3559 kfree(switchdev_work->fdb_info.addr); in mlxsw_sp_switchdev_bridge_fdb_event_work() 3799 fdb_info = container_of(info, in mlxsw_sp_switchdev_event() 3807 if (!switchdev_work->fdb_info.addr) in mlxsw_sp_switchdev_event() [all …]
|
| /drivers/net/ethernet/freescale/dpaa2/ |
| A D | dpaa2-switch.c | 2283 fdb_info = &switchdev_work->fdb_info; in dpaa2_switch_event_work() 2287 if (!fdb_info->added_by_user || fdb_info->is_local) in dpaa2_switch_event_work() 2291 fdb_info->addr); in dpaa2_switch_event_work() 2294 fdb_info->addr); in dpaa2_switch_event_work() 2297 fdb_info->offloaded = true; in dpaa2_switch_event_work() 2299 &fdb_info->info, NULL); in dpaa2_switch_event_work() 2302 if (!fdb_info->added_by_user || fdb_info->is_local) in dpaa2_switch_event_work() 2312 kfree(switchdev_work->fdb_info.addr); in dpaa2_switch_event_work() 2344 memcpy(&switchdev_work->fdb_info, ptr, in dpaa2_switch_port_event() 2347 if (!switchdev_work->fdb_info.addr) in dpaa2_switch_port_event() [all …]
|
| /drivers/net/ethernet/rocker/ |
| A D | rocker_main.c | 2697 struct switchdev_notifier_fdb_info fdb_info; member 2720 struct switchdev_notifier_fdb_info *fdb_info; in rocker_switchdev_event_work() local 2726 fdb_info = &switchdev_work->fdb_info; in rocker_switchdev_event_work() 2727 if (!fdb_info->added_by_user || fdb_info->is_local) in rocker_switchdev_event_work() 2737 fdb_info = &switchdev_work->fdb_info; in rocker_switchdev_event_work() 2738 if (!fdb_info->added_by_user || fdb_info->is_local) in rocker_switchdev_event_work() 2747 kfree(switchdev_work->fdb_info.addr); in rocker_switchdev_event_work() 2779 memcpy(&switchdev_work->fdb_info, ptr, in rocker_switchdev_event() 2780 sizeof(switchdev_work->fdb_info)); in rocker_switchdev_event() 2782 if (unlikely(!switchdev_work->fdb_info.addr)) { in rocker_switchdev_event() [all …]
|
| /drivers/net/ethernet/adi/ |
| A D | adin1110.c | 168 struct switchdev_notifier_fdb_info fdb_info; member 1461 ret = adin1110_fdb_add(port_priv, &switchdev_work->fdb_info); in adin1110_switchdev_event_work() 1464 &switchdev_work->fdb_info); in adin1110_switchdev_event_work() 1467 adin1110_fdb_del(port_priv, &switchdev_work->fdb_info); in adin1110_switchdev_event_work() 1475 kfree(switchdev_work->fdb_info.addr); in adin1110_switchdev_event_work() 1487 struct switchdev_notifier_fdb_info *fdb_info = ptr; in adin1110_switchdev_event() local 1503 memcpy(&switchdev_work->fdb_info, ptr, in adin1110_switchdev_event() 1504 sizeof(switchdev_work->fdb_info)); in adin1110_switchdev_event() 1507 if (!switchdev_work->fdb_info.addr) in adin1110_switchdev_event() 1510 ether_addr_copy((u8 *)switchdev_work->fdb_info.addr, in adin1110_switchdev_event() [all …]
|
| /drivers/s390/net/ |
| A D | qeth_l2_main.c | 855 struct switchdev_notifier_fdb_info *fdb_info; in qeth_l2_switchdev_event() local 869 fdb_info = container_of(info, in qeth_l2_switchdev_event() 880 fdb_info->addr); in qeth_l2_switchdev_event()
|