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: Allen Pais <allen.l...@gmail.com>
---
 drivers/dma/plx_dma.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/dma/plx_dma.c b/drivers/dma/plx_dma.c
index db4c5fd453a9..f387c5bbc170 100644
--- a/drivers/dma/plx_dma.c
+++ b/drivers/dma/plx_dma.c
@@ -241,9 +241,9 @@ static void plx_dma_stop(struct plx_dma_dev *plxdev)
        rcu_read_unlock();
 }
 
-static void plx_dma_desc_task(unsigned long data)
+static void plx_dma_desc_task(struct tasklet_struct *t)
 {
-       struct plx_dma_dev *plxdev = (void *)data;
+       struct plx_dma_dev *plxdev = from_tasklet(plxdev, t, desc_task);
 
        plx_dma_process_desc(plxdev);
 }
@@ -513,8 +513,7 @@ static int plx_dma_create(struct pci_dev *pdev)
        }
 
        spin_lock_init(&plxdev->ring_lock);
-       tasklet_init(&plxdev->desc_task, plx_dma_desc_task,
-                    (unsigned long)plxdev);
+       tasklet_setup(&plxdev->desc_task, plx_dma_desc_task);
 
        RCU_INIT_POINTER(plxdev->pdev, pdev);
        plxdev->bar = pcim_iomap_table(pdev)[0];
-- 
2.17.1

Reply via email to