kernel BUG in dw2102_load_firmware

Status: upstream: reported on 2026/08/05 01:39
Reported-by: syzbot+60288ce05241ad3858e8@syzkaller.appspotmail.com
First crash: 23d, last: 23d

Sample crash report:
detected buffer overflow in memcpy
------------[ cut here ]------------
kernel BUG at lib/string_helpers.c:1046!
invalid opcode: 0000 [#1] PREEMPT SMP KASAN
CPU: 0 PID: 8 Comm: kworker/0:0 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Workqueue: usb_hub_wq hub_event
RIP: 0010:fortify_panic+0x13/0x20 lib/string_helpers.c:1046
Code: 89 d8 48 83 c4 08 5b 41 5c 41 5d 41 5e 41 5f 5d c3 cc cc cc cc cc cc f3 0f 1e fa 48 89 fe 48 c7 c7 20 bc 1c 8b e8 8d 6b fc ff <0f> 0b cc cc cc cc cc cc cc cc cc cc cc f3 0f 1e fa 55 48 89 e5 41
RSP: 0018:ffffc900000d6b58 EFLAGS: 00010246
RAX: 0000000000000022 RBX: 0000000000000002 RCX: 98350d98558dbf00
RDX: ffffc900185b3000 RSI: 00000000000d55bd RDI: 00000000000d55be
RBP: ffffc900000d6c90 R08: ffffc900000d6867 R09: 1ffff9200001ad0c
R10: dffffc0000000000 R11: fffff5200001ad0d R12: dffffc0000000000
R13: 0000000000000000 R14: 0000000000000001 R15: ffff88801c715b80
FS:  0000000000000000(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f5a30deb700 CR3: 00000000219da000 CR4: 00000000003506f0
Call Trace:
 <TASK>
 dw2102_load_firmware+0xd74/0xf00 drivers/media/usb/dvb-usb/dw2102.c:-1
 dvb_usb_download_firmware+0x1ba/0x260 drivers/media/usb/dvb-usb/dvb-usb-firmware.c:109
 dvb_usb_device_init+0xdd3/0x2550 drivers/media/usb/dvb-usb/dvb-usb-init.c:298
 dw2102_probe+0x8a/0x270 drivers/media/usb/dvb-usb/dw2102.c:2597
 usb_probe_interface+0x5c2/0xaf0 drivers/usb/core/driver.c:396
 call_driver_probe drivers/base/dd.c:-1 [inline]
 really_probe+0x247/0xae0 drivers/base/dd.c:717
 __driver_probe_device+0x1f5/0x390 drivers/base/dd.c:879
 driver_probe_device+0x4f/0x420 drivers/base/dd.c:909
 __device_attach_driver+0x2ca/0x510 drivers/base/dd.c:1037
 bus_for_each_drv+0x252/0x2e0 drivers/base/bus.c:459
 __device_attach+0x2c1/0x420 drivers/base/dd.c:1109
 bus_probe_device+0x180/0x260 drivers/base/bus.c:580
 device_add+0x87c/0xc40 drivers/base/core.c:3700
 usb_set_configuration+0x1ad0/0x2150 drivers/usb/core/message.c:2265
 usb_generic_driver_probe+0x8d/0x150 drivers/usb/core/generic.c:238
 usb_probe_device+0x12a/0x260 drivers/usb/core/driver.c:293
 call_driver_probe drivers/base/dd.c:-1 [inline]
 really_probe+0x247/0xae0 drivers/base/dd.c:717
 __driver_probe_device+0x1f5/0x390 drivers/base/dd.c:879
 driver_probe_device+0x4f/0x420 drivers/base/dd.c:909
 __device_attach_driver+0x2ca/0x510 drivers/base/dd.c:1037
 bus_for_each_drv+0x252/0x2e0 drivers/base/bus.c:459
 __device_attach+0x2c1/0x420 drivers/base/dd.c:1109
 bus_probe_device+0x180/0x260 drivers/base/bus.c:580
 device_add+0x87c/0xc40 drivers/base/core.c:3700
 usb_new_device+0x995/0x1550 drivers/usb/core/hub.c:2660
 hub_port_connect drivers/usb/core/hub.c:5529 [inline]
 hub_port_connect_change drivers/usb/core/hub.c:5669 [inline]
 port_event drivers/usb/core/hub.c:5833 [inline]
 hub_event+0x29d5/0x4a80 drivers/usb/core/hub.c:5915
 process_one_work kernel/workqueue.c:2657 [inline]
 process_scheduled_works+0xa60/0x1600 kernel/workqueue.c:2734
 worker_thread+0xa5e/0xfe0 kernel/workqueue.c:2815
 kthread+0x2fa/0x390 kernel/kthread.c:388
 ret_from_fork+0x48/0x80 arch/x86/kernel/process.c:152
 ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:293
 </TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:fortify_panic+0x13/0x20 lib/string_helpers.c:1046
Code: 89 d8 48 83 c4 08 5b 41 5c 41 5d 41 5e 41 5f 5d c3 cc cc cc cc cc cc f3 0f 1e fa 48 89 fe 48 c7 c7 20 bc 1c 8b e8 8d 6b fc ff <0f> 0b cc cc cc cc cc cc cc cc cc cc cc f3 0f 1e fa 55 48 89 e5 41
RSP: 0018:ffffc900000d6b58 EFLAGS: 00010246
RAX: 0000000000000022 RBX: 0000000000000002 RCX: 98350d98558dbf00
RDX: ffffc900185b3000 RSI: 00000000000d55bd RDI: 00000000000d55be
RBP: ffffc900000d6c90 R08: ffffc900000d6867 R09: 1ffff9200001ad0c
R10: dffffc0000000000 R11: fffff5200001ad0d R12: dffffc0000000000
R13: 0000000000000000 R14: 0000000000000001 R15: ffff88801c715b80
FS:  0000000000000000(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f5a30fef2f8 CR3: 0000000078926000 CR4: 00000000003506f0

Crashes (3):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/08/05 01:46 linux-6.6.y aa0e49877a2e d4abbeac .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan kernel BUG in dw2102_load_firmware
2026/08/05 01:41 linux-6.6.y aa0e49877a2e d4abbeac .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan kernel BUG in dw2102_load_firmware
2026/08/05 01:39 linux-6.6.y aa0e49877a2e d4abbeac .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan kernel BUG in dw2102_load_firmware
* Struck through repros no longer work on HEAD.