syzbot


divide error in usbnet_start_xmit

Status: fixed on 2022/03/08 16:11
Subsystems: usb
[Documentation on labels]
Reported-by: syzbot+76bb1d34ffa0adc03baa@syzkaller.appspotmail.com
Fix commit: 397430b50a36 usbnet: sanity check for maxpacket
First crash: 915d, last: 895d
Discussions (24)
Title Replies (including bot) Last reply
[PATCH 5.14 000/169] 5.14.15-rc1 review 180 (180) 2022/01/11 07:33
[PATCH 5.10 00/77] 5.10.77-rc1 review 99 (99) 2021/11/12 22:56
[PATCH 4.4 00/17] 4.4.291-rc1 review 22 (22) 2021/11/02 12:56
[PATCH 4.9 00/20] 4.9.289-rc1 review 24 (24) 2021/11/02 08:36
[PATCH 5.14 000/125] 5.14.16-rc1 review 130 (130) 2021/11/02 07:19
[PATCH 5.4 00/51] 5.4.157-rc1 review 55 (55) 2021/11/01 11:42
[PATCH 4.19 00/35] 4.19.215-rc1 review 38 (38) 2021/11/01 11:42
[PATCH 4.14 00/25] 4.14.254-rc1 review 27 (27) 2021/11/01 11:14
[PATCH 4.4 00/44] 4.4.290-rc1 review 49 (49) 2021/10/26 19:47
[PATCH 5.10 00/95] 5.10.76-rc1 review 106 (106) 2021/10/26 19:16
[PATCH 5.4 00/58] 5.4.156-rc1 review 64 (64) 2021/10/26 19:16
[PATCH 4.19 00/37] 4.19.214-rc1 review 43 (43) 2021/10/26 19:15
[PATCH 4.14 00/30] 4.14.253-rc1 review 33 (33) 2021/10/26 19:15
[PATCH 4.9 00/50] 4.9.288-rc1 review 55 (55) 2021/10/26 19:14
[PATCH AUTOSEL 5.14 01/18] KVM: arm64: Report corrupted refcount at EL2 19 (19) 2021/10/25 18:24
[PATCH AUTOSEL 4.4 1/3] scsi: core: Put LLD module refcnt after SCSI device is released 3 (3) 2021/10/25 17:01
[PATCH AUTOSEL 4.9 1/4] scsi: core: Put LLD module refcnt after SCSI device is released 4 (4) 2021/10/25 17:01
[PATCH AUTOSEL 4.14 1/7] scsi: core: Put LLD module refcnt after SCSI device is released 7 (7) 2021/10/25 17:01
[PATCH AUTOSEL 4.19 1/7] scsi: core: Put LLD module refcnt after SCSI device is released 7 (7) 2021/10/25 17:01
[PATCH AUTOSEL 5.4 1/9] scsi: core: Put LLD module refcnt after SCSI device is released 9 (9) 2021/10/25 17:00
[PATCH AUTOSEL 5.10 01/13] ASoC: soc-core: fix null-ptr-deref in snd_soc_del_component_unlocked() 13 (13) 2021/10/25 17:00
[PATCHv2] usbnet: sanity check for maxpacket 3 (3) 2021/10/21 15:10
[PATCH] usbnet: sanity check for maxpacket 2 (2) 2021/10/20 10:32
[syzbot] divide error in usbnet_start_xmit 4 (6) 2021/10/19 10:08
Last patch testing requests (2)
Created Duration User Patch Repo Result
2021/10/22 01:50 21m 11115066@vivo.com patch upstream OK
2021/10/19 08:14 0m oneukum@suse.com patch https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git c03fb16bafdf error OK

Sample crash report:
divide error: 0000 [#1] SMP KASAN
CPU: 0 PID: 1315 Comm: kworker/0:6 Not tainted 5.15.0-rc6-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Workqueue: mld mld_ifc_work
RIP: 0010:usbnet_start_xmit+0x3f1/0x1f70 drivers/net/usb/usbnet.c:1404
Code: 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 0f b6 04 02 84 c0 74 08 3c 03 0f 8e 4b 18 00 00 8b 44 24 08 31 d2 31 ff <41> f7 b5 28 0d 00 00 41 89 d4 89 d6 e8 4e 12 b5 fd 45 85 e4 0f 84
RSP: 0018:ffffc9000104f660 EFLAGS: 00010246
RAX: 000000000000005a RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff838cbdc1 RDI: 0000000000000000
RBP: ffff8881155b1350 R08: 0000000000000001 R09: 0000000000000000
R10: ffffffff838cbdb4 R11: 0000000000000000 R12: 00000000c0011100
R13: ffff888119304000 R14: ffff8881155b1280 R15: ffff8881155b0d00
FS:  0000000000000000(0000) GS:ffff8881f6800000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f24d7edaa70 CR3: 000000010a45d000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 __netdev_start_xmit include/linux/netdevice.h:4988 [inline]
 netdev_start_xmit include/linux/netdevice.h:5002 [inline]
 xmit_one net/core/dev.c:3576 [inline]
 dev_hard_start_xmit+0x1df/0x890 net/core/dev.c:3592
 sch_direct_xmit+0x25b/0x790 net/sched/sch_generic.c:342
 __dev_xmit_skb net/core/dev.c:3803 [inline]
 __dev_queue_xmit+0xf25/0x2d40 net/core/dev.c:4170
 neigh_resolve_output net/core/neighbour.c:1492 [inline]
 neigh_resolve_output+0x50e/0x820 net/core/neighbour.c:1472
 neigh_output include/net/neighbour.h:510 [inline]
 ip6_finish_output2+0xdbe/0x1b20 net/ipv6/ip6_output.c:126
 __ip6_finish_output.part.0+0x387/0xbb0 net/ipv6/ip6_output.c:191
 __ip6_finish_output include/linux/skbuff.h:982 [inline]
 ip6_finish_output net/ipv6/ip6_output.c:201 [inline]
 NF_HOOK_COND include/linux/netfilter.h:296 [inline]
 ip6_output+0x3d2/0x810 net/ipv6/ip6_output.c:224
 dst_output include/net/dst.h:450 [inline]
 NF_HOOK include/linux/netfilter.h:307 [inline]
 NF_HOOK include/linux/netfilter.h:301 [inline]
 mld_sendpack+0x979/0xe10 net/ipv6/mcast.c:1826
 mld_send_cr net/ipv6/mcast.c:2127 [inline]
 mld_ifc_work+0x71c/0xdc0 net/ipv6/mcast.c:2659
 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 3c734ee50b55655e ]---
RIP: 0010:usbnet_start_xmit+0x3f1/0x1f70 drivers/net/usb/usbnet.c:1404
Code: 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 0f b6 04 02 84 c0 74 08 3c 03 0f 8e 4b 18 00 00 8b 44 24 08 31 d2 31 ff <41> f7 b5 28 0d 00 00 41 89 d4 89 d6 e8 4e 12 b5 fd 45 85 e4 0f 84
RSP: 0018:ffffc9000104f660 EFLAGS: 00010246
RAX: 000000000000005a RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff838cbdc1 RDI: 0000000000000000
RBP: ffff8881155b1350 R08: 0000000000000001 R09: 0000000000000000
R10: ffffffff838cbdb4 R11: 0000000000000000 R12: 00000000c0011100
R13: ffff888119304000 R14: ffff8881155b1280 R15: ffff8881155b0d00
FS:  0000000000000000(0000) GS:ffff8881f6800000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f24d7edaa70 CR3: 000000010a45d000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess), 1 bytes skipped:
   0:	48 b8 00 00 00 00 00 	movabs $0xdffffc0000000000,%rax
   7:	fc ff df
   a:	48 89 fa             	mov    %rdi,%rdx
   d:	48 c1 ea 03          	shr    $0x3,%rdx
  11:	0f b6 04 02          	movzbl (%rdx,%rax,1),%eax
  15:	84 c0                	test   %al,%al
  17:	74 08                	je     0x21
  19:	3c 03                	cmp    $0x3,%al
  1b:	0f 8e 4b 18 00 00    	jle    0x186c
  21:	8b 44 24 08          	mov    0x8(%rsp),%eax
  25:	31 d2                	xor    %edx,%edx
  27:	31 ff                	xor    %edi,%edi
* 29:	41 f7 b5 28 0d 00 00 	divl   0xd28(%r13) <-- trapping instruction
  30:	41 89 d4             	mov    %edx,%r12d
  33:	89 d6                	mov    %edx,%esi
  35:	e8 4e 12 b5 fd       	callq  0xfdb51288
  3a:	45 85 e4             	test   %r12d,%r12d
  3d:	0f                   	.byte 0xf
  3e:	84                   	.byte 0x84

Crashes (760):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2021/10/18 09:49 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c03fb16bafdf 0c5d9412 .config console log report syz C ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/15 16:37 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 660a92a59b9e 0c5d9412 .config console log report syz C ci2-upstream-usb divide error in usbnet_start_xmit
2021/11/04 16:28 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing a0548b26901f 4c1be0be .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/11/03 22:18 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing a0548b26901f 4c1be0be .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/11/02 06:11 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing a0548b26901f 098b5d53 .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/11/01 07:38 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing a0548b26901f 098b5d53 .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/31 16:27 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing a0548b26901f 098b5d53 .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/31 11:49 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing a0548b26901f 098b5d53 .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/31 07:12 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing a0548b26901f 098b5d53 .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/25 08:33 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 4f0000ee .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/25 07:29 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 4f0000ee .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/25 07:06 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 4f0000ee .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/25 06:05 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 4f0000ee .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/25 04:50 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 4f0000ee .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/25 03:49 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 4f0000ee .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/25 02:10 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 4f0000ee .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/25 00:14 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 4f0000ee .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 22:26 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 20:47 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 19:24 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 16:22 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 14:55 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 13:09 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 12:33 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 10:57 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 09:23 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 08:22 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 07:08 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 04:56 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 03:45 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 02:42 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/24 01:17 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 23:59 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 22:52 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 22:17 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 21:11 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 19:51 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 18:45 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 17:44 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 16:40 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 15:05 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 13:45 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 12:42 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 11:39 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 10:37 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 09:28 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 08:35 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/23 07:22 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing c26f1c109d21 282f03fb .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
2021/10/15 16:02 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing 660a92a59b9e 0c5d9412 .config console log report info ci2-upstream-usb divide error in usbnet_start_xmit
* Struck through repros no longer work on HEAD.