Commit ee6c6e73 authored by Davidlohr Bueso's avatar Davidlohr Bueso Committed by Greg Kroah-Hartman
Browse files

staging/wlan-ng: get the correct struct hfa384x in work callback



hfa384x_usbctlx_completion_task() is bogusly using the reaper BH when
in fact this is the completion_bh. This was reflected when trying
to acquire the hw->ctlxq.lock and getting a failed lockdep class
initialized to it.

Fixes: 9442e81d ("staging/wlan-ng, prism2usb: replace completion_bh tasklet with work")
Reported-by: default avatar <syzbot+ce3408364c4a234dd90c@syzkaller.appspotmail.com>
Signed-off-by: default avatarDavidlohr Bueso <dave@stgolabs.net>
Link: https://lore.kernel.org/r/20220629165225.3436822-1-dave@stgolabs.net


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent a111daf0
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2632,7 +2632,7 @@ static void hfa384x_usbctlx_reaper_task(struct work_struct *work)
 */
static void hfa384x_usbctlx_completion_task(struct work_struct *work)
{
	struct hfa384x *hw = container_of(work, struct hfa384x, reaper_bh);
	struct hfa384x *hw = container_of(work, struct hfa384x, completion_bh);
	struct hfa384x_usbctlx *ctlx, *temp;
	unsigned long flags;