Search Linux Wireless

[syzbot] divide error in mwifiex_usb_dnld_fw

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

syzbot found the following issue on:

HEAD commit:    660a92a59b9e usb: xhci: Enable runtime-pm by default on AM..
git tree:       https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing
console output: https://syzkaller.appspot.com/x/log.txt?x=13844eecb00000
kernel config:  https://syzkaller.appspot.com/x/.config?x=5016916cdc0a4a84
dashboard link: https://syzkaller.appspot.com/bug?extid=4e7b6c94d22f4bfca9a0
compiler:       gcc (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2
syz repro:      https://syzkaller.appspot.com/x/repro.syz?x=122d9278b00000
C reproducer:   https://syzkaller.appspot.com/x/repro.c?x=143499ecb00000

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+4e7b6c94d22f4bfca9a0@xxxxxxxxxxxxxxxxxxxxxxxxx

divide error: 0000 [#1] SMP KASAN
CPU: 1 PID: 17 Comm: kworker/1:0 Not tainted 5.15.0-rc5-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Workqueue: events request_firmware_work_func
RIP: 0010:mwifiex_write_data_sync drivers/net/wireless/marvell/mwifiex/usb.c:696 [inline]
RIP: 0010:mwifiex_prog_fw_w_helper drivers/net/wireless/marvell/mwifiex/usb.c:1437 [inline]
RIP: 0010:mwifiex_usb_dnld_fw+0xabd/0x11a0 drivers/net/wireless/marvell/mwifiex/usb.c:1518
Code: 00 00 00 48 8d bb 70 01 00 00 48 89 f8 48 c1 e8 03 42 0f b6 04 28 84 c0 74 08 3c 03 0f 8e c2 04 00 00 8b 44 24 10 31 d2 31 ff <f7> b3 70 01 00 00 89 d6 89 54 24 20 e8 f2 e9 00 fe 8b 54 24 20 8b
RSP: 0018:ffffc9000012f9b0 EFLAGS: 00010246
RAX: 0000000000000014 RBX: ffff88810a724028 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff8340e60c RDI: 0000000000000000
RBP: ffff88810a8af800 R08: 0000000000000000 R09: ffff88810a8af800
R10: ffffffff8340e5d2 R11: 0000000000000000 R12: 0000000000000003
R13: dffffc0000000000 R14: ffffc9000012fa58 R15: 0000000000000001
FS:  0000000000000000(0000) GS:ffff8881f6900000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007ffc8edc7c70 CR3: 000000010d046000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 _mwifiex_fw_dpc+0x181/0x10a0 drivers/net/wireless/marvell/mwifiex/main.c:542
 request_firmware_work_func+0x12c/0x230 drivers/base/firmware_loader/main.c:1081
 process_one_work+0x9bf/0x1620 kernel/workqueue.c:2297
 worker_thread+0x658/0x11f0 kernel/workqueue.c:2444
 kthread+0x3c2/0x4a0 kernel/kthread.c:319
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
Modules linked in:
---[ end trace 461e13770bd5d6b4 ]---
RIP: 0010:mwifiex_write_data_sync drivers/net/wireless/marvell/mwifiex/usb.c:696 [inline]
RIP: 0010:mwifiex_prog_fw_w_helper drivers/net/wireless/marvell/mwifiex/usb.c:1437 [inline]
RIP: 0010:mwifiex_usb_dnld_fw+0xabd/0x11a0 drivers/net/wireless/marvell/mwifiex/usb.c:1518
Code: 00 00 00 48 8d bb 70 01 00 00 48 89 f8 48 c1 e8 03 42 0f b6 04 28 84 c0 74 08 3c 03 0f 8e c2 04 00 00 8b 44 24 10 31 d2 31 ff <f7> b3 70 01 00 00 89 d6 89 54 24 20 e8 f2 e9 00 fe 8b 54 24 20 8b
RSP: 0018:ffffc9000012f9b0 EFLAGS: 00010246
RAX: 0000000000000014 RBX: ffff88810a724028 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff8340e60c RDI: 0000000000000000
RBP: ffff88810a8af800 R08: 0000000000000000 R09: ffff88810a8af800
R10: ffffffff8340e5d2 R11: 0000000000000000 R12: 0000000000000003
R13: dffffc0000000000 R14: ffffc9000012fa58 R15: 0000000000000001
FS:  0000000000000000(0000) GS:ffff8881f6900000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007ffc8edc7c70 CR3: 000000010d046000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess):
   0:	00 00                	add    %al,(%rax)
   2:	00 48 8d             	add    %cl,-0x73(%rax)
   5:	bb 70 01 00 00       	mov    $0x170,%ebx
   a:	48 89 f8             	mov    %rdi,%rax
   d:	48 c1 e8 03          	shr    $0x3,%rax
  11:	42 0f b6 04 28       	movzbl (%rax,%r13,1),%eax
  16:	84 c0                	test   %al,%al
  18:	74 08                	je     0x22
  1a:	3c 03                	cmp    $0x3,%al
  1c:	0f 8e c2 04 00 00    	jle    0x4e4
  22:	8b 44 24 10          	mov    0x10(%rsp),%eax
  26:	31 d2                	xor    %edx,%edx
  28:	31 ff                	xor    %edi,%edi
* 2a:	f7 b3 70 01 00 00    	divl   0x170(%rbx) <-- trapping instruction
  30:	89 d6                	mov    %edx,%esi
  32:	89 54 24 20          	mov    %edx,0x20(%rsp)
  36:	e8 f2 e9 00 fe       	callq  0xfe00ea2d
  3b:	8b 54 24 20          	mov    0x20(%rsp),%edx
  3f:	8b                   	.byte 0x8b


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzkaller@xxxxxxxxxxxxxxxx.

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.
syzbot can test patches for this issue, for details see:
https://goo.gl/tpsmEJ#testing-patches



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux