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: 9442e81d7e ("staging/wlan-ng, prism2usb: replace completion_bh tasklet with work")
Reported-by: syzbot+ce3408364c4a234dd90c@syzkaller.appspotmail.com
Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
Link: https://lore.kernel.org/r/20220629165225.3436822-1-dave@stgolabs.net
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Davidlohr Bueso 2022-06-29 09:52:25 -07:00 committed by Greg Kroah-Hartman
parent a111daf0c5
commit ee6c6e7342

View File

@ -2632,7 +2632,7 @@ static void hfa384x_usbctlx_reaper_task(struct work_struct *work)
*/ */
static void hfa384x_usbctlx_completion_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; struct hfa384x_usbctlx *ctlx, *temp;
unsigned long flags; unsigned long flags;