INFO: rcu detected stall in dev_ioctl (2)

7 views
Skip to first unread message

syzbot

unread,
Aug 29, 2021, 10:21:24 AM8/29/21
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: e23d55af0e1f Linux 4.19.205
git tree: linux-4.19.y
console output: https://syzkaller.appspot.com/x/log.txt?x=139b426d300000
kernel config: https://syzkaller.appspot.com/x/.config?x=2221dd564152b412
dashboard link: https://syzkaller.appspot.com/bug?extid=946bad132588c5abd60d
compiler: gcc version 10.2.1 20210110 (Debian 10.2.1-6)

Unfortunately, I don't have any reproducer for this issue yet.

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+946bad...@syzkaller.appspotmail.com

batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
rcu: INFO: rcu_preempt self-detected stall on CPU
rcu: 1-....: (10499 ticks this GP) idle=42a/1/0x4000000000000002 softirq=129128/129128 fqs=5182
rcu: (t=10500 jiffies g=161677 q=2186)
NMI backtrace for cpu 1
CPU: 1 PID: 21752 Comm: syz-executor.1 Not tainted 4.19.205-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
<IRQ>
__dump_stack lib/dump_stack.c:77 [inline]
dump_stack+0x1fc/0x2ef lib/dump_stack.c:118
nmi_cpu_backtrace.cold+0x63/0xa2 lib/nmi_backtrace.c:101
nmi_trigger_cpumask_backtrace+0x1a6/0x1f0 lib/nmi_backtrace.c:62
trigger_single_cpu_backtrace include/linux/nmi.h:164 [inline]
rcu_dump_cpu_stacks+0x15f/0x19c kernel/rcu/tree.c:1340
print_cpu_stall kernel/rcu/tree.c:1478 [inline]
check_cpu_stall kernel/rcu/tree.c:1550 [inline]
__rcu_pending kernel/rcu/tree.c:3293 [inline]
rcu_pending kernel/rcu/tree.c:3336 [inline]
rcu_check_callbacks.cold+0x62d/0xe19 kernel/rcu/tree.c:2682
update_process_times+0x2a/0x70 kernel/time/timer.c:1650
tick_sched_handle+0x9b/0x180 kernel/time/tick-sched.c:168
tick_sched_timer+0xfc/0x290 kernel/time/tick-sched.c:1278
__run_hrtimer kernel/time/hrtimer.c:1419 [inline]
__hrtimer_run_queues+0x3f6/0xe60 kernel/time/hrtimer.c:1481
hrtimer_interrupt+0x326/0x9e0 kernel/time/hrtimer.c:1539
local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1071 [inline]
smp_apic_timer_interrupt+0x10c/0x550 arch/x86/kernel/apic/apic.c:1096
apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:894
</IRQ>
RIP: 0010:should_resched arch/x86/include/asm/preempt.h:99 [inline]
RIP: 0010:__local_bh_enable_ip+0x18d/0x270 kernel/softirq.c:196
Code: 00 00 00 00 fc ff df 48 c1 e8 03 80 3c 10 00 0f 85 dd 00 00 00 48 83 3d d8 50 b8 08 00 0f 84 8d 00 00 00 fb 66 0f 1f 44 00 00 <65> 8b 05 3c ad c8 7e 85 c0 74 7d 5b 5d 41 5c c3 80 3d 85 75 d5 09
RSP: 0018:ffff888217c2f6f0 EFLAGS: 00000286 ORIG_RAX: ffffffffffffff13
RAX: 1ffffffff13e305b RBX: 0000000000000201 RCX: 1ffff11013d5914a
RDX: dffffc0000000000 RSI: ffff88809eac8a30 RDI: ffff88809eac8a04
RBP: ffffffff87dbb75a R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: ffff88809eac8180
R13: ffff8880b02da908 R14: ffff88803d26a640 R15: 000000000000037f
spin_unlock_bh include/linux/spinlock.h:374 [inline]
batadv_tt_local_purge_pending_clients+0x2aa/0x3a0 net/batman-adv/translation-table.c:3924
batadv_tt_local_resize_to_mtu+0x96/0x130 net/batman-adv/translation-table.c:4208
batadv_update_min_mtu net/batman-adv/hard-interface.c:637 [inline]
batadv_hard_if_event+0xbb3/0x15c0 net/batman-adv/hard-interface.c:1059
notifier_call_chain+0xc0/0x230 kernel/notifier.c:93
call_netdevice_notifiers_mtu net/core/dev.c:1785 [inline]
dev_set_mtu_ext+0x384/0x580 net/core/dev.c:7819
dev_set_mtu+0x95/0x120 net/core/dev.c:7840
dev_ifsioc+0x30a/0x8c0 net/core/dev_ioctl.c:244
dev_ioctl+0x1ab/0xc50 net/core/dev_ioctl.c:488
sock_do_ioctl+0x148/0x2d0 net/socket.c:1038
sock_ioctl+0x2ef/0x5d0 net/socket.c:1133
vfs_ioctl fs/ioctl.c:46 [inline]
file_ioctl fs/ioctl.c:501 [inline]
do_vfs_ioctl+0xcdb/0x12e0 fs/ioctl.c:688
ksys_ioctl+0x9b/0xc0 fs/ioctl.c:705
__do_sys_ioctl fs/ioctl.c:712 [inline]
__se_sys_ioctl fs/ioctl.c:710 [inline]
__x64_sys_ioctl+0x6f/0xb0 fs/ioctl.c:710
do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x4665f9
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 bc ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007facb5d07188 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 000000000056bf80 RCX: 00000000004665f9
RDX: 00000000200003c0 RSI: 0000000000008922 RDI: 0000000000000003
RBP: 00000000004bfcc4 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 000000000056bf80
R13: 00007ffd393b953f R14: 00007facb5d07300 R15: 0000000000022000
net_ratelimit: 6324 callbacks suppressed
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
rcu: INFO: rcu_sched detected stalls on CPUs/tasks:
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
rcu: 1-....: (1 GPs behind) idle=42a/1/0x4000000000000000 softirq=129126/129128 fqs=5177
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
rcu: (detected by 0, t=10537 jiffies, g=29981, q=11)
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 21752 Comm: syz-executor.1 Not tainted 4.19.205-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:arch_local_save_flags arch/x86/include/asm/paravirt.h:784 [inline]
RIP: 0010:arch_local_irq_save arch/x86/include/asm/paravirt.h:806 [inline]
RIP: 0010:lock_acquire+0x98/0x3c0 kernel/locking/lockdep.c:3903
Code: f1 89 48 ba 00 00 00 00 00 fc ff df 48 c1 e8 03 80 3c 10 00 0f 85 eb 02 00 00 48 83 3d 30 21 a6 08 00 0f 84 75 02 00 00 9c 58 <0f> 1f 44 00 00 48 ba 00 00 00 00 00 fc ff df 48 89 44 24 08 48 c7
RSP: 0018:ffff8880ba107e10 EFLAGS: 00000086
RAX: 0000000000000086 RBX: ffff88809eac8180 RCX: 0000000000000002
RDX: dffffc0000000000 RSI: 0000000000000000 RDI: ffff88809eac8a04
RBP: ffffffff89f954c8 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000005 R11: 0000000000000800 R12: 0000000000000000
R13: 0000000000000000 R14: 0000000000000002 R15: 0000000000000001
FS: 00007facb5d07700(0000) GS:ffff8880ba100000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000540198 CR3: 0000000235358000 CR4: 00000000001426e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<IRQ>
seqcount_lockdep_reader_access include/linux/seqlock.h:81 [inline]
read_seqcount_begin include/linux/seqlock.h:164 [inline]
ktime_get+0xd0/0x2f0 kernel/time/timekeeping.c:756
clockevents_program_event+0x141/0x350 kernel/time/clockevents.c:336
tick_program_event+0xac/0x140 kernel/time/tick-oneshot.c:48
hrtimer_interrupt+0x40a/0x9e0 kernel/time/hrtimer.c:1552
local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1071 [inline]
smp_apic_timer_interrupt+0x10c/0x550 arch/x86/kernel/apic/apic.c:1096
apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:894
</IRQ>
RIP: 0010:arch_local_irq_restore arch/x86/include/asm/paravirt.h:789 [inline]
RIP: 0010:console_trylock_spinning kernel/printk/printk.c:1724 [inline]
RIP: 0010:vprintk_emit+0x668/0x740 kernel/printk/printk.c:1964
Code: 48 b8 00 00 00 00 00 fc ff df 41 80 7c 05 00 00 0f 85 d9 00 00 00 48 83 3d 7c 94 a3 08 00 74 37 e8 6d a4 14 00 48 89 df 57 9d <0f> 1f 44 00 00 e9 82 fe ff ff e8 59 a4 14 00 0f 0b e8 52 a4 14 00
RSP: 0018:ffff888217c2f630 EFLAGS: 00000246 ORIG_RAX: ffffffffffffff13
RAX: 0000000000040000 RBX: 0000000000000246 RCX: ffffc90008800000
RDX: 0000000000040000 RSI: ffffffff814dee53 RDI: 0000000000000246
RBP: ffff888217c2f670 R08: ffffffff8cd18e20 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 000000000000005c
R13: 1ffffffff13e3059 R14: 0000000000000200 R15: 0000000000000001
vprintk_func+0x79/0x180 kernel/printk/printk_safe.c:405
printk+0xba/0xed kernel/printk/printk.c:2040
batadv_tt_local_resize_to_mtu.cold+0x17/0x1c net/batman-adv/translation-table.c:4212
batadv_update_min_mtu net/batman-adv/hard-interface.c:637 [inline]
batadv_hard_if_event+0xbb3/0x15c0 net/batman-adv/hard-interface.c:1059
notifier_call_chain+0xc0/0x230 kernel/notifier.c:93
call_netdevice_notifiers_mtu net/core/dev.c:1785 [inline]
dev_set_mtu_ext+0x384/0x580 net/core/dev.c:7819
dev_set_mtu+0x95/0x120 net/core/dev.c:7840
dev_ifsioc+0x30a/0x8c0 net/core/dev_ioctl.c:244
dev_ioctl+0x1ab/0xc50 net/core/dev_ioctl.c:488
sock_do_ioctl+0x148/0x2d0 net/socket.c:1038
sock_ioctl+0x2ef/0x5d0 net/socket.c:1133
vfs_ioctl fs/ioctl.c:46 [inline]
file_ioctl fs/ioctl.c:501 [inline]
do_vfs_ioctl+0xcdb/0x12e0 fs/ioctl.c:688
ksys_ioctl+0x9b/0xc0 fs/ioctl.c:705
__do_sys_ioctl fs/ioctl.c:712 [inline]
__se_sys_ioctl fs/ioctl.c:710 [inline]
__x64_sys_ioctl+0x6f/0xb0 fs/ioctl.c:710
do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x4665f9
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 bc ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007facb5d07188 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 000000000056bf80 RCX: 00000000004665f9
RDX: 00000000200003c0 RSI: 0000000000008922 RDI: 0000000000000003
RBP: 00000000004bfcc4 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 000000000056bf80
R13: 00007ffd393b953f R14: 00007facb5d07300 R15: 0000000000022000
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
net_ratelimit: 5866 callbacks suppressed
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
batman_adv: batadv0: Forced to purge local tt entries to fit new maximum fragment MTU (-320)
----------------
Code disassembly (best guess), 6 bytes skipped:
0: df 48 c1 fisttps -0x3f(%rax)
3: e8 03 80 3c 10 callq 0x103c800b
8: 00 0f add %cl,(%rdi)
a: 85 dd test %ebx,%ebp
c: 00 00 add %al,(%rax)
e: 00 48 83 add %cl,-0x7d(%rax)
11: 3d d8 50 b8 08 cmp $0x8b850d8,%eax
16: 00 0f add %cl,(%rdi)
18: 84 8d 00 00 00 fb test %cl,-0x5000000(%rbp)
1e: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1)
* 24: 65 8b 05 3c ad c8 7e mov %gs:0x7ec8ad3c(%rip),%eax # 0x7ec8ad67 <-- trapping instruction
2b: 85 c0 test %eax,%eax
2d: 74 7d je 0xac
2f: 5b pop %rbx
30: 5d pop %rbp
31: 41 5c pop %r12
33: c3 retq
34: 80 .byte 0x80
35: 3d 85 75 d5 09 cmp $0x9d57585,%eax


---
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 syzk...@googlegroups.com.

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

syzbot

unread,
Dec 27, 2021, 9:21:13 AM12/27/21
to syzkaller...@googlegroups.com
Auto-closing this bug as obsolete.
Crashes did not happen for a while, no reproducer and no activity.
Reply all
Reply to author
Forward
0 new messages