From: Allen Pais <allen.l...@gmail.com>

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/usb/serial/mos7720.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/usb/serial/mos7720.c b/drivers/usb/serial/mos7720.c
index 2ec4eeacebc7..5eed1078fac8 100644
--- a/drivers/usb/serial/mos7720.c
+++ b/drivers/usb/serial/mos7720.c
@@ -282,11 +282,12 @@ static void destroy_urbtracker(struct kref *kref)
  * port callback had to be deferred because the disconnect mutex could not be
  * obtained at the time.
  */
-static void send_deferred_urbs(unsigned long _mos_parport)
+static void send_deferred_urbs(struct tasklet_struct *t)
 {
        int ret_val;
        unsigned long flags;
-       struct mos7715_parport *mos_parport = (void *)_mos_parport;
+       struct mos7715_parport *mos_parport = from_tasklet(mos_parport, t,
+                                                          urb_tasklet);
        struct urbtracker *urbtrack, *tmp;
        struct list_head *cursor, *next;
        struct device *dev;
@@ -716,8 +717,7 @@ static int mos7715_parport_init(struct usb_serial *serial)
        INIT_LIST_HEAD(&mos_parport->deferred_urbs);
        usb_set_serial_data(serial, mos_parport); /* hijack private pointer */
        mos_parport->serial = serial;
-       tasklet_init(&mos_parport->urb_tasklet, send_deferred_urbs,
-                    (unsigned long) mos_parport);
+       tasklet_setup(&mos_parport->urb_tasklet, send_deferred_urbs);
        init_completion(&mos_parport->syncmsg_compl);
 
        /* cycle parallel port reset bit */
-- 
2.17.1

Reply via email to