syzbot


WARNING in netif_rx

Status: fixed on 2023/02/24 13:50
Subsystems: can
[Documentation on labels]
Fix commit: 167053f8dd0e net: Correct wrong BH disable in hard-interrupt.
First crash: 793d, last: 793d

Sample crash report:
mcba_usb 2-1:0.0 can0: Unsupported msg (0xB1)
mcba_usb 2-1:0.0 can0: Unsupported msg (0x91)
------------[ cut here ]------------
WARNING: CPU: 0 PID: 0 at kernel/softirq.c:363 __local_bh_enable_ip+0xba/0x120 kernel/softirq.c:363
Modules linked in:
CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.17.0-rc5-next-20220222-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:__local_bh_enable_ip+0xba/0x120 kernel/softirq.c:363
Code: 45 bf 01 00 00 00 e8 e5 52 09 00 e8 20 e7 37 00 fb 65 8b 05 28 df ba 7e 85 c0 74 58 5b 5d c3 65 8b 05 76 e6 ba 7e 85 c0 75 a2 <0f> 0b eb 9e e8 4d e5 37 00 eb 9f 48 89 ef e8 53 67 16 00 eb a8 0f
RSP: 0018:ffffc90000007978 EFLAGS: 00010046
RAX: 0000000000000000 RBX: 0000000000000200 RCX: 1ffffffff1b2aad1
RDX: 0000000000000000 RSI: 0000000000000200 RDI: ffffffff87303d27
RBP: ffffffff87303d27 R08: 0000000000000000 R09: 0000000000000000
R10: ffffffff87303f88 R11: 0000000000000000 R12: 0000000000000001
R13: ffff88801eb9b450 R14: dffffc0000000000 R15: ffff888024290cc0
FS:  0000000000000000(0000) GS:ffff8880b9c00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000055d8585ba950 CR3: 0000000074d3d000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <IRQ>
 local_bh_enable include/linux/bottom_half.h:33 [inline]
 netif_rx+0x10d/0x530 net/core/dev.c:4878
 mcba_usb_process_can drivers/net/can/usb/mcba_usb.c:461 [inline]
 mcba_usb_process_rx drivers/net/can/usb/mcba_usb.c:542 [inline]
 mcba_usb_read_bulk_callback+0x55e/0xe70 drivers/net/can/usb/mcba_usb.c:603
 __usb_hcd_giveback_urb+0x2b0/0x5c0 drivers/usb/core/hcd.c:1670
 usb_hcd_giveback_urb+0x367/0x410 drivers/usb/core/hcd.c:1747
 dummy_timer+0x11f9/0x32b0 drivers/usb/gadget/udc/dummy_hcd.c:1987
 call_timer_fn+0x1a5/0x6b0 kernel/time/timer.c:1421
 expire_timers kernel/time/timer.c:1466 [inline]
 __run_timers.part.0+0x67c/0xa30 kernel/time/timer.c:1734
 __run_timers kernel/time/timer.c:1715 [inline]
 run_timer_softirq+0xb3/0x1d0 kernel/time/timer.c:1747
 __do_softirq+0x29b/0x9c2 kernel/softirq.c:558
 invoke_softirq kernel/softirq.c:432 [inline]
 __irq_exit_rcu+0x123/0x180 kernel/softirq.c:637
 irq_exit_rcu+0x5/0x20 kernel/softirq.c:649
 sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1097
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638
RIP: 0010:native_save_fl arch/x86/include/asm/irqflags.h:29 [inline]
RIP: 0010:arch_local_save_flags arch/x86/include/asm/irqflags.h:70 [inline]
RIP: 0010:arch_irqs_disabled arch/x86/include/asm/irqflags.h:130 [inline]
RIP: 0010:acpi_safe_halt drivers/acpi/processor_idle.c:116 [inline]
RIP: 0010:acpi_idle_do_entry+0x1c6/0x250 drivers/acpi/processor_idle.c:556
Code: 89 de e8 4d 3a 27 f8 84 db 75 ac e8 c4 37 27 f8 e8 9f 7d 2d f8 eb 0c e8 b8 37 27 f8 0f 00 2d 41 fa bf 00 e8 ac 37 27 f8 fb f4 <9c> 5b 81 e3 00 02 00 00 fa 31 ff 48 89 de e8 87 3b 27 f8 48 85 db
RSP: 0018:ffffffff8b807d60 EFLAGS: 00000293
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: ffffffff8b8bc840 RSI: ffffffff8951fa24 RDI: 0000000000000000
RBP: ffff8881423e7864 R08: 0000000000000001 R09: 0000000000000001
R10: ffffffff817f77e8 R11: 0000000000000000 R12: 0000000000000001
R13: ffff8881423e7800 R14: ffff8881423e7864 R15: ffff888145d4f004
 acpi_idle_enter+0x361/0x500 drivers/acpi/processor_idle.c:692
 cpuidle_enter_state+0x1b1/0xc80 drivers/cpuidle/cpuidle.c:237
 cpuidle_enter+0x4a/0xa0 drivers/cpuidle/cpuidle.c:351
 call_cpuidle kernel/sched/idle.c:158 [inline]
 cpuidle_idle_call kernel/sched/idle.c:239 [inline]
 do_idle+0x3e8/0x590 kernel/sched/idle.c:306
 cpu_startup_entry+0x14/0x20 kernel/sched/idle.c:403
 start_kernel+0x47f/0x4a0 init/main.c:1140
 secondary_startup_64_no_verify+0xc3/0xcb
 </TASK>
----------------
Code disassembly (best guess):
   0:	89 de                	mov    %ebx,%esi
   2:	e8 4d 3a 27 f8       	callq  0xf8273a54
   7:	84 db                	test   %bl,%bl
   9:	75 ac                	jne    0xffffffb7
   b:	e8 c4 37 27 f8       	callq  0xf82737d4
  10:	e8 9f 7d 2d f8       	callq  0xf82d7db4
  15:	eb 0c                	jmp    0x23
  17:	e8 b8 37 27 f8       	callq  0xf82737d4
  1c:	0f 00 2d 41 fa bf 00 	verw   0xbffa41(%rip)        # 0xbffa64
  23:	e8 ac 37 27 f8       	callq  0xf82737d4
  28:	fb                   	sti
  29:	f4                   	hlt
* 2a:	9c                   	pushfq <-- trapping instruction
  2b:	5b                   	pop    %rbx
  2c:	81 e3 00 02 00 00    	and    $0x200,%ebx
  32:	fa                   	cli
  33:	31 ff                	xor    %edi,%edi
  35:	48 89 de             	mov    %rbx,%rsi
  38:	e8 87 3b 27 f8       	callq  0xf8273bc4
  3d:	48 85 db             	test   %rbx,%rbx

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2022/02/23 12:25 linux-next 196d330d7fb1 6e821dbf .config console log report info ci-upstream-linux-next-kasan-gce-root WARNING in netif_rx
2022/02/23 06:22 linux-next 196d330d7fb1 6e821dbf .config console log report info ci-upstream-linux-next-kasan-gce-root WARNING in netif_rx
* Struck through repros no longer work on HEAD.