Re: [syzbot] [wireless?] INFO: task hung in ath9k_hif_usb_firmware_cb (3)

Toke Høiland-Jørgensen
2025-01-05T20:25:24Z

syzbot <syzbot+e9b1ff41aa6a7ebf9640@syzkaller.appspotmail.com> writes:

> syzbot has found a reproducer for the following issue on:
>
> HEAD commit: 78d4f34e2115 Linux 6.13-rc3
> git tree: upstream
> console output: https://syzkaller.appspot.com/x/log.txt?x=10d10b44580000
> kernel config: https://syzkaller.appspot.com/x/.config?x=6c532525a32eb57d
> dashboard link: https://syzkaller.appspot.com/bug?extid=e9b1ff41aa6a7ebf9640
> compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=166cb4f8580000
>
> Downloadable assets:
> disk image: https://storage.googleapis.com/syzbot-assets/297b40bb0993/disk-78d4f34e.raw.xz
> vmlinux: https://storage.googleapis.com/syzbot-assets/e3ec807b99e0/vmlinux-78d4f34e.xz
> kernel image: https://storage.googleapis.com/syzbot-assets/226a54b87ab2/bzImage-78d4f34e.xz
>
> IMPORTANT: if you fix the issue, please add the following tag to the commit:
> Reported-by: syzbot+e9b1ff41aa6a7ebf9640@syzkaller.appspotmail.com

#syz test

diff --git a/drivers/net/wireless/ath/ath9k/hif_usb.c b/drivers/net/wireless/ath/ath9k/hif_usb.c
index fe9abe8cd268..1cdc723fe4f5 100644
--- a/drivers/net/wireless/ath/ath9k/hif_usb.c
+++ b/drivers/net/wireless/ath/ath9k/hif_usb.c
@@ -1153,17 +1153,9 @@ static void ath9k_hif_usb_dev_deinit(struct hif_device_usb *hif_dev)
static void ath9k_hif_usb_firmware_fail(struct hif_device_usb *hif_dev)
{
struct device *dev = &hif_dev->udev->dev;
- struct device *parent = dev->parent;

complete_all(&hif_dev->fw_done);
-
- if (parent)
- device_lock(parent);
-
device_release_driver(dev);
-
- if (parent)
- device_unlock(parent);
}

static void ath9k_hif_usb_firmware_cb(const struct firmware *fw, void *context);