OSDN Git Service

net: usbnet: use new tasklet API
authorEmil Renner Berthing <kernel@esmil.dk>
Sat, 23 Jan 2021 17:32:21 +0000 (18:32 +0100)
committerJakub Kicinski <kuba@kernel.org>
Wed, 27 Jan 2021 02:04:26 +0000 (18:04 -0800)
This converts the driver to use the new tasklet API introduced in
commit 12cc923f1ccc ("tasklet: Introduce new initialization API")

Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/usb/usbnet.c

index 0fa31f1..b4c8080 100644 (file)
@@ -1539,11 +1539,11 @@ static void usbnet_bh (struct timer_list *t)
        }
 }
 
-static void usbnet_bh_tasklet(unsigned long data)
+static void usbnet_bh_tasklet(struct tasklet_struct *t)
 {
-       struct timer_list *t = (struct timer_list *)data;
+       struct usbnet *dev = from_tasklet(dev, t, bh);
 
-       usbnet_bh(t);
+       usbnet_bh(&dev->delay);
 }
 
 
@@ -1673,7 +1673,7 @@ usbnet_probe (struct usb_interface *udev, const struct usb_device_id *prod)
        skb_queue_head_init (&dev->txq);
        skb_queue_head_init (&dev->done);
        skb_queue_head_init(&dev->rxq_pause);
-       tasklet_init(&dev->bh, usbnet_bh_tasklet, (unsigned long)&dev->delay);
+       tasklet_setup(&dev->bh, usbnet_bh_tasklet);
        INIT_WORK (&dev->kevent, usbnet_deferred_kevent);
        init_usb_anchor(&dev->deferred);
        timer_setup(&dev->delay, usbnet_bh, 0);