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.per...@gmail.com>
Signed-off-by: Allen Pais <allen.l...@gmail.com>
---
 drivers/net/ethernet/netronome/nfp/nfp_net_common.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/net/ethernet/netronome/nfp/nfp_net_common.c 
b/drivers/net/ethernet/netronome/nfp/nfp_net_common.c
index 39ee23e8c0bf..1dcd24d899f5 100644
--- a/drivers/net/ethernet/netronome/nfp/nfp_net_common.c
+++ b/drivers/net/ethernet/netronome/nfp/nfp_net_common.c
@@ -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);
                }
 
-- 
2.17.1

Reply via email to