Skip to content

Commit

Permalink
net: jme: convert tasklets to use new tasklet_setup() API
Browse files Browse the repository at this point in the history
In preparation for unconditionally passing the
struct tasklet_struct pointer to all tasklet
callbacks, switch to using the new tasklet_setup()
and from_tasklet() to pass the tasklet pointer explicitly.

Signed-off-by: Romain Perier <romain.perier@gmail.com>
Signed-off-by: Allen Pais <apais@linux.microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Allen Pais authored and David S. Miller committed Sep 14, 2020
1 parent aa7c3fe commit 4d07f7e
Showing 1 changed file with 16 additions and 24 deletions.
40 changes: 16 additions & 24 deletions drivers/net/ethernet/jme.c
Original file line number Diff line number Diff line change
Expand Up @@ -1187,9 +1187,9 @@ jme_shutdown_nic(struct jme_adapter *jme)
}

static void
jme_pcc_tasklet(unsigned long arg)
jme_pcc_tasklet(struct tasklet_struct *t)
{
struct jme_adapter *jme = (struct jme_adapter *)arg;
struct jme_adapter *jme = from_tasklet(jme, t, pcc_task);
struct net_device *netdev = jme->dev;

if (unlikely(test_bit(JME_FLAG_SHUTDOWN, &jme->flags))) {
Expand Down Expand Up @@ -1265,10 +1265,9 @@ jme_stop_shutdown_timer(struct jme_adapter *jme)
jwrite32f(jme, JME_APMC, apmc);
}

static void
jme_link_change_tasklet(unsigned long arg)
static void jme_link_change_tasklet(struct tasklet_struct *t)
{
struct jme_adapter *jme = (struct jme_adapter *)arg;
struct jme_adapter *jme = from_tasklet(jme, t, linkch_task);
struct net_device *netdev = jme->dev;
int rc;

Expand Down Expand Up @@ -1345,9 +1344,9 @@ jme_link_change_tasklet(unsigned long arg)
}

static void
jme_rx_clean_tasklet(unsigned long arg)
jme_rx_clean_tasklet(struct tasklet_struct *t)
{
struct jme_adapter *jme = (struct jme_adapter *)arg;
struct jme_adapter *jme = from_tasklet(jme, t, rxclean_task);
struct dynpcc_info *dpi = &(jme->dpi);

jme_process_receive(jme, jme->rx_ring_size);
Expand Down Expand Up @@ -1380,9 +1379,9 @@ jme_poll(JME_NAPI_HOLDER(holder), JME_NAPI_WEIGHT(budget))
}

static void
jme_rx_empty_tasklet(unsigned long arg)
jme_rx_empty_tasklet(struct tasklet_struct *t)
{
struct jme_adapter *jme = (struct jme_adapter *)arg;
struct jme_adapter *jme = from_tasklet(jme, t, rxempty_task);

if (unlikely(atomic_read(&jme->link_changing) != 1))
return;
Expand All @@ -1392,7 +1391,7 @@ jme_rx_empty_tasklet(unsigned long arg)

netif_info(jme, rx_status, jme->dev, "RX Queue Full!\n");

jme_rx_clean_tasklet(arg);
jme_rx_clean_tasklet(&jme->rxclean_task);

while (atomic_read(&jme->rx_empty) > 0) {
atomic_dec(&jme->rx_empty);
Expand All @@ -1416,10 +1415,9 @@ jme_wake_queue_if_stopped(struct jme_adapter *jme)

}

static void
jme_tx_clean_tasklet(unsigned long arg)
static void jme_tx_clean_tasklet(struct tasklet_struct *t)
{
struct jme_adapter *jme = (struct jme_adapter *)arg;
struct jme_adapter *jme = from_tasklet(jme, t, txclean_task);
struct jme_ring *txring = &(jme->txring[0]);
struct txdesc *txdesc = txring->desc;
struct jme_buffer_info *txbi = txring->bufinf, *ctxbi, *ttxbi;
Expand Down Expand Up @@ -1834,14 +1832,10 @@ jme_open(struct net_device *netdev)
jme_clear_pm_disable_wol(jme);
JME_NAPI_ENABLE(jme);

tasklet_init(&jme->linkch_task, jme_link_change_tasklet,
(unsigned long) jme);
tasklet_init(&jme->txclean_task, jme_tx_clean_tasklet,
(unsigned long) jme);
tasklet_init(&jme->rxclean_task, jme_rx_clean_tasklet,
(unsigned long) jme);
tasklet_init(&jme->rxempty_task, jme_rx_empty_tasklet,
(unsigned long) jme);
tasklet_setup(&jme->linkch_task, jme_link_change_tasklet);
tasklet_setup(&jme->txclean_task, jme_tx_clean_tasklet);
tasklet_setup(&jme->rxclean_task, jme_rx_clean_tasklet);
tasklet_setup(&jme->rxempty_task, jme_rx_empty_tasklet);

rc = jme_request_irq(jme);
if (rc)
Expand Down Expand Up @@ -3040,9 +3034,7 @@ jme_init_one(struct pci_dev *pdev,
atomic_set(&jme->tx_cleaning, 1);
atomic_set(&jme->rx_empty, 1);

tasklet_init(&jme->pcc_task,
jme_pcc_tasklet,
(unsigned long) jme);
tasklet_setup(&jme->pcc_task, jme_pcc_tasklet);
jme->dpi.cur = PCC_P1;

jme->reg_ghc = 0;
Expand Down

0 comments on commit 4d07f7e

Please sign in to comment.