On Thu, 20 Jun 2024 22:05:10 -0700 Allen Pais <allen.lkml@xxxxxxxxx> wrote: > The only generic interface to execute asynchronously in the BH context is > tasklet; however, it's marked deprecated and has some design flaws. To > replace tasklets, BH workqueue support was recently added. A BH workqueue > behaves similarly to regular workqueues except that the queued work items > are executed in the BH context. > > This patch converts a few drivers in drivers/ethernet/* from tasklet > to BH workqueue. The next set will be sent out after the next -rc is > out. > > This series is based on > commit a6ec08beec9e ("Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net") > > First version converting all the drivers can be found at: > https://lore.kernel.org/all/20240507190111.16710 > -2-apais@xxxxxxxxxxxxxxxxxxx/ > > > Allen Pais (15): > net: alteon: Convert tasklet API to new bottom half workqueue > mechanism > net: xgbe: Convert tasklet API to new bottom half workqueue mechanism > net: cnic: Convert tasklet API to new bottom half workqueue mechanism > net: macb: Convert tasklet API to new bottom half workqueue mechanism > net: cavium/liquidio: Convert tasklet API to new bottom half workqueue > mechanism > net: octeon: Convert tasklet API to new bottom half workqueue > mechanism > net: thunderx: Convert tasklet API to new bottom half workqueue > mechanism > net: chelsio: Convert tasklet API to new bottom half workqueue > mechanism > net: sundance: Convert tasklet API to new bottom half workqueue > mechanism > net: hinic: Convert tasklet API to new bottom half workqueue mechanism > net: ehea: Convert tasklet API to new bottom half workqueue mechanism > net: ibmvnic: Convert tasklet API to new bottom half workqueue > mechanism > net: jme: Convert tasklet API to new bottom half workqueue mechanism > net: marvell: Convert tasklet API to new bottom half workqueue > mechanism > net: mtk-wed: Convert tasklet API to new bottom half workqueue > mechanism > > drivers/net/ethernet/alteon/acenic.c | 26 +++---- > drivers/net/ethernet/alteon/acenic.h | 8 +-- > drivers/net/ethernet/amd/xgbe/xgbe-drv.c | 30 ++++---- > drivers/net/ethernet/amd/xgbe/xgbe-i2c.c | 16 ++--- > drivers/net/ethernet/amd/xgbe/xgbe-mdio.c | 16 ++--- > drivers/net/ethernet/amd/xgbe/xgbe-pci.c | 4 +- > drivers/net/ethernet/amd/xgbe/xgbe.h | 10 +-- > drivers/net/ethernet/broadcom/cnic.c | 19 ++--- > drivers/net/ethernet/broadcom/cnic.h | 2 +- > drivers/net/ethernet/cadence/macb.h | 3 +- > drivers/net/ethernet/cadence/macb_main.c | 10 +-- > .../net/ethernet/cavium/liquidio/lio_core.c | 4 +- > .../net/ethernet/cavium/liquidio/lio_main.c | 24 +++---- > .../ethernet/cavium/liquidio/lio_vf_main.c | 10 +-- > .../ethernet/cavium/liquidio/octeon_droq.c | 4 +- > .../ethernet/cavium/liquidio/octeon_main.h | 4 +- > .../net/ethernet/cavium/octeon/octeon_mgmt.c | 13 ++-- > drivers/net/ethernet/cavium/thunder/nic.h | 5 +- > .../net/ethernet/cavium/thunder/nicvf_main.c | 24 +++---- > .../ethernet/cavium/thunder/nicvf_queues.c | 4 +- > .../ethernet/cavium/thunder/nicvf_queues.h | 2 +- > drivers/net/ethernet/chelsio/cxgb/sge.c | 19 ++--- > drivers/net/ethernet/chelsio/cxgb4/cxgb4.h | 9 +-- > .../net/ethernet/chelsio/cxgb4/cxgb4_main.c | 2 +- > .../ethernet/chelsio/cxgb4/cxgb4_tc_mqprio.c | 4 +- > .../net/ethernet/chelsio/cxgb4/cxgb4_uld.c | 2 +- > drivers/net/ethernet/chelsio/cxgb4/sge.c | 40 +++++------ > drivers/net/ethernet/chelsio/cxgb4vf/sge.c | 6 +- > drivers/net/ethernet/dlink/sundance.c | 41 +++++------ > .../net/ethernet/huawei/hinic/hinic_hw_cmdq.c | 2 +- > .../net/ethernet/huawei/hinic/hinic_hw_eqs.c | 17 +++-- > .../net/ethernet/huawei/hinic/hinic_hw_eqs.h | 2 +- > drivers/net/ethernet/ibm/ehea/ehea.h | 3 +- > drivers/net/ethernet/ibm/ehea/ehea_main.c | 14 ++-- > drivers/net/ethernet/ibm/ibmvnic.c | 24 +++---- > drivers/net/ethernet/ibm/ibmvnic.h | 2 +- > drivers/net/ethernet/jme.c | 72 +++++++++---------- > drivers/net/ethernet/jme.h | 8 +-- > .../net/ethernet/marvell/mvpp2/mvpp2_main.c | 4 +- > drivers/net/ethernet/marvell/skge.c | 12 ++-- > drivers/net/ethernet/marvell/skge.h | 3 +- > drivers/net/ethernet/mediatek/mtk_wed_wo.c | 12 ++-- > drivers/net/ethernet/mediatek/mtk_wed_wo.h | 3 +- > 43 files changed, 273 insertions(+), 266 deletions(-) > This should also go to netdev@xxxxxxxxxxxxxxx