summaryrefslogtreecommitdiff
path: root/drivers/staging/wlan-ng/prism2usb.c
diff options
context:
space:
mode:
authorDavidlohr Bueso <dave@stgolabs.net>2022-04-11 18:16:16 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-04-12 16:53:50 +0300
commitcbe0f674a2d63e88d9c2de2aab02d6da68b109f2 (patch)
tree734c747680ffb1a2ce53145194b30ab73c64fbf5 /drivers/staging/wlan-ng/prism2usb.c
parent5fb6bc718cf965cb6171cc5bbafd5546d5e68474 (diff)
downloadlinux-cbe0f674a2d63e88d9c2de2aab02d6da68b109f2.tar.xz
staging/wlan-ng, prism2usb: replace reaper_bh tasklet with work
Tasklets have long been deprecated as being too heavy on the system by running in irq context - and this is not a performance critical path. If a higher priority process wants to run, it must wait for the tasklet to finish before doing so. The reaper_bh tasklet will now run in process context and have further concurrency (tasklets being serialized among themselves), but this is done holding the ctlxq.lock, so it should be fine. Signed-off-by: Davidlohr Bueso <dave@stgolabs.net> Link: https://lore.kernel.org/r/20220411151620.129178-3-dave@stgolabs.net Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/wlan-ng/prism2usb.c')
-rw-r--r--drivers/staging/wlan-ng/prism2usb.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/staging/wlan-ng/prism2usb.c b/drivers/staging/wlan-ng/prism2usb.c
index dc0749b8eff7..36340f36b0cb 100644
--- a/drivers/staging/wlan-ng/prism2usb.c
+++ b/drivers/staging/wlan-ng/prism2usb.c
@@ -182,7 +182,7 @@ static void prism2sta_disconnect_usb(struct usb_interface *interface)
usb_kill_urb(&hw->ctlx_urb);
tasklet_kill(&hw->completion_bh);
- tasklet_kill(&hw->reaper_bh);
+ cancel_work_sync(&hw->reaper_bh);
cancel_work_sync(&hw->link_bh);
cancel_work_sync(&hw->commsqual_bh);