nfp: convert tasklets to use new tasklet_setup() API
authorAllen Pais <apais@linux.microsoft.com>
Mon, 14 Sep 2020 07:29:35 +0000 (12:59 +0530)
committerDavid S. Miller <davem@davemloft.net>
Mon, 14 Sep 2020 20:02:38 +0000 (13:02 -0700)
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>
drivers/net/ethernet/netronome/nfp/nfp_net_common.c

index 21ea22694e479a53f8d5441b0c4f93e19e349f97..b150da43adb2d1703039c43ad06ea2496d30833a 100644 (file)
@@ -2287,9 +2287,9 @@ static bool nfp_ctrl_rx(struct nfp_net_r_vector *r_vec)
        return budget;
 }
 
-static void nfp_ctrl_poll(unsigned long arg)
+static void nfp_ctrl_poll(struct tasklet_struct *t)
 {
-       struct nfp_net_r_vector *r_vec = (void *)arg;
+       struct nfp_net_r_vector *r_vec = from_tasklet(r_vec, t, tasklet);
 
        spin_lock(&r_vec->lock);
        nfp_net_tx_complete(r_vec->tx_ring, 0);
@@ -2337,8 +2337,7 @@ static void nfp_net_vecs_init(struct nfp_net *nn)
 
                        __skb_queue_head_init(&r_vec->queue);
                        spin_lock_init(&r_vec->lock);
-                       tasklet_init(&r_vec->tasklet, nfp_ctrl_poll,
-                                    (unsigned long)r_vec);
+                       tasklet_setup(&r_vec->tasklet, nfp_ctrl_poll);
                        tasklet_disable(&r_vec->tasklet);
                }