staging: wlan-ng: fix ODEBUG bug in prism2sta_disconnect_usb
authorQiujun Huang <hqjagain@gmail.com>
Wed, 25 Mar 2020 07:06:46 +0000 (15:06 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 2 Apr 2020 15:20:37 +0000 (17:20 +0200)
commit a1f165a6b738f0c9d744bad4af7a53909278f5fc upstream.

We should cancel hw->usb_work before kfree(hw).

Reported-by: syzbot+6d2e7f6fa90e27be9d62@syzkaller.appspotmail.com
Signed-off-by: Qiujun Huang <hqjagain@gmail.com>
Cc: stable <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/1585120006-30042-1-git-send-email-hqjagain@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/wlan-ng/prism2usb.c

index bfb6b0a6528d28795019aedb25b804039ecc6474..f7149bb231807943312ab34b3804f22c1fef6298 100644 (file)
@@ -179,6 +179,7 @@ static void prism2sta_disconnect_usb(struct usb_interface *interface)
 
                cancel_work_sync(&hw->link_bh);
                cancel_work_sync(&hw->commsqual_bh);
+               cancel_work_sync(&hw->usb_work);
 
                /* Now we complete any outstanding commands
                 * and tell everyone who is waiting for their