Lines Matching refs:switchdev_work
1434 struct dsa_switchdev_event_work *switchdev_work = in dsa_slave_switchdev_event_work() local
1436 struct net_device *dev = switchdev_work->dev; in dsa_slave_switchdev_event_work()
1442 switch (switchdev_work->event) { in dsa_slave_switchdev_event_work()
1444 fdb_info = &switchdev_work->fdb_info; in dsa_slave_switchdev_event_work()
1458 fdb_info = &switchdev_work->fdb_info; in dsa_slave_switchdev_event_work()
1471 kfree(switchdev_work->fdb_info.addr); in dsa_slave_switchdev_event_work()
1472 kfree(switchdev_work); in dsa_slave_switchdev_event_work()
1478 switchdev_work, in dsa_slave_switchdev_fdb_work_init()
1482 memcpy(&switchdev_work->fdb_info, fdb_info, in dsa_slave_switchdev_fdb_work_init()
1483 sizeof(switchdev_work->fdb_info)); in dsa_slave_switchdev_fdb_work_init()
1484 switchdev_work->fdb_info.addr = kzalloc(ETH_ALEN, GFP_ATOMIC); in dsa_slave_switchdev_fdb_work_init()
1485 if (!switchdev_work->fdb_info.addr) in dsa_slave_switchdev_fdb_work_init()
1487 ether_addr_copy((u8 *)switchdev_work->fdb_info.addr, in dsa_slave_switchdev_fdb_work_init()
1497 struct dsa_switchdev_event_work *switchdev_work; in dsa_slave_switchdev_event() local
1502 switchdev_work = kzalloc(sizeof(*switchdev_work), GFP_ATOMIC); in dsa_slave_switchdev_event()
1503 if (!switchdev_work) in dsa_slave_switchdev_event()
1506 INIT_WORK(&switchdev_work->work, in dsa_slave_switchdev_event()
1508 switchdev_work->dev = dev; in dsa_slave_switchdev_event()
1509 switchdev_work->event = event; in dsa_slave_switchdev_event()
1514 if (dsa_slave_switchdev_fdb_work_init(switchdev_work, ptr)) in dsa_slave_switchdev_event()
1519 kfree(switchdev_work); in dsa_slave_switchdev_event()
1523 dsa_schedule_work(&switchdev_work->work); in dsa_slave_switchdev_event()
1527 kfree(switchdev_work); in dsa_slave_switchdev_event()