Home
last modified time | relevance | path

Searched refs:fdb_work (Results 1 – 5 of 5) sorted by relevance

/linux/drivers/net/ethernet/microchip/lan966x/
H A Dlan966x_fdb.c118 lan966x->fdb_work = alloc_ordered_workqueue("lan966x_order", 0); in lan966x_fdb_init()
119 if (!lan966x->fdb_work) in lan966x_fdb_init()
127 destroy_workqueue(lan966x->fdb_work); in lan966x_fdb_deinit()
133 flush_workqueue(lan966x->fdb_work); in lan966x_fdb_flush_workqueue()
136 static void lan966x_fdb_port_event_work(struct lan966x_fdb_event_work *fdb_work) in lan966x_fdb_port_event_work() argument
142 lan966x = fdb_work->lan966x; in lan966x_fdb_port_event_work()
143 port = netdev_priv(fdb_work->orig_dev); in lan966x_fdb_port_event_work()
144 fdb_info = &fdb_work->fdb_info; in lan966x_fdb_port_event_work()
146 switch (fdb_work->event) { in lan966x_fdb_port_event_work()
162 static void lan966x_fdb_bridge_event_work(struct lan966x_fdb_event_work *fdb_work) in lan966x_fdb_bridge_event_work() argument
[all …]
H A Dlan966x_main.h312 struct workqueue_struct *fdb_work; member
/linux/drivers/net/ethernet/ti/icssm/
H A Dicssm_prueth_switch.c788 struct icssm_prueth_sw_fdb_work *fdb_work = in icssm_prueth_sw_fdb_work() local
790 struct prueth_emac *emac = fdb_work->emac; in icssm_prueth_sw_fdb_work()
798 switch (fdb_work->event) { in icssm_prueth_sw_fdb_work()
800 icssm_prueth_sw_insert_fdb_entry(emac, fdb_work->addr, 0); in icssm_prueth_sw_fdb_work()
811 netdev_put(emac->ndev, &fdb_work->ndev_tracker); in icssm_prueth_sw_fdb_work()
812 kfree(fdb_work); in icssm_prueth_sw_fdb_work()
817 struct icssm_prueth_sw_fdb_work *fdb_work; in icssm_prueth_sw_learn_fdb() local
819 fdb_work = kzalloc_obj(*fdb_work, GFP_ATOMIC); in icssm_prueth_sw_learn_fdb()
820 if (WARN_ON(!fdb_work)) in icssm_prueth_sw_learn_fdb()
823 INIT_WORK(&fdb_work->work, icssm_prueth_sw_fdb_work); in icssm_prueth_sw_learn_fdb()
[all …]
/linux/drivers/net/ethernet/mellanox/mlx5/core/en/rep/
H A Dbridge.c353 mlx5_esw_bridge_cleanup_switchdev_fdb_work(struct mlx5_bridge_switchdev_fdb_work *fdb_work) in mlx5_esw_bridge_cleanup_switchdev_fdb_work() argument
355 dev_put(fdb_work->dev); in mlx5_esw_bridge_cleanup_switchdev_fdb_work()
356 kfree(fdb_work->fdb_info.addr); in mlx5_esw_bridge_cleanup_switchdev_fdb_work()
357 kfree(fdb_work); in mlx5_esw_bridge_cleanup_switchdev_fdb_work()
362 struct mlx5_bridge_switchdev_fdb_work *fdb_work = in mlx5_esw_bridge_switchdev_fdb_event_work() local
365 &fdb_work->fdb_info; in mlx5_esw_bridge_switchdev_fdb_event_work()
367 fdb_work->br_offloads; in mlx5_esw_bridge_switchdev_fdb_event_work()
368 struct net_device *dev = fdb_work->dev; in mlx5_esw_bridge_switchdev_fdb_event_work()
377 if (fdb_work->add) in mlx5_esw_bridge_switchdev_fdb_event_work()
386 mlx5_esw_bridge_cleanup_switchdev_fdb_work(fdb_work); in mlx5_esw_bridge_switchdev_fdb_event_work()
/linux/drivers/net/ethernet/intel/ice/
H A Dice_eswitch_br.c468 ice_eswitch_br_fdb_work_dealloc(struct ice_esw_br_fdb_work *fdb_work) in ice_eswitch_br_fdb_work_dealloc() argument
470 kfree(fdb_work->fdb_info.addr); in ice_eswitch_br_fdb_work_dealloc()
471 kfree(fdb_work); in ice_eswitch_br_fdb_work_dealloc()
477 struct ice_esw_br_fdb_work *fdb_work = ice_work_to_fdb_work(work); in ice_eswitch_br_fdb_event_work() local
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()
485 br_port = ice_eswitch_br_netdev_to_port(fdb_work->dev); in ice_eswitch_br_fdb_event_work()
489 switch (fdb_work->event) { in ice_eswitch_br_fdb_event_work()
491 ice_eswitch_br_fdb_entry_create(fdb_work->dev, br_port, in ice_eswitch_br_fdb_event_work()
[all …]