INFO: rcu detected stall in pagemap_read

13 views
Skip to first unread message

syzbot

unread,
Oct 1, 2018, 2:14:08 PM10/1/18
to syzkaller-upst...@googlegroups.com
Hello,

syzbot found the following crash on:

HEAD commit: 4794a36bf08d Add linux-next specific files for 20180928
git tree: linux-next
console output: https://syzkaller.appspot.com/x/log.txt?x=10761d1a400000
kernel config: https://syzkaller.appspot.com/x/.config?x=b0ba9bb377f8ae91
dashboard link: https://syzkaller.appspot.com/bug?extid=16814ff8837828e25c7d
compiler: gcc (GCC) 8.0.1 20180413 (experimental)
CC: [adob...@gmail.com ak...@linux-foundation.org
ava...@openvz.org kirill....@linux.intel.com
linux-...@vger.kernel.org linux-...@vger.kernel.org
linu...@us.ibm.com mho...@suse.com vba...@suse.cz ying....@intel.com]

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

IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by: syzbot+16814f...@syzkaller.appspotmail.com

rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: (detected by 1, t=10502 jiffies, g=27157, q=153036)
rcu: All QSes seen, last rcu_preempt kthread activity 10502
(4294982081-4294971579), jiffies_till_next_fqs=1, root ->qsmask 0x0
syz-executor4 R running task 22240 15195 6175 0x80000000
Call Trace:
<IRQ>
sched_show_task.cold.87+0x2b6/0x30a kernel/sched/core.c:5300
print_other_cpu_stall.cold.66+0x7dd/0x8bb kernel/rcu/tree.c:1286
check_cpu_stall kernel/rcu/tree.c:1415 [inline]
rcu_pending kernel/rcu/tree.c:2961 [inline]
rcu_check_callbacks+0xfe5/0x1400 kernel/rcu/tree.c:2506
update_process_times+0x2d/0x70 kernel/time/timer.c:1636
tick_sched_handle+0x9f/0x180 kernel/time/tick-sched.c:164
tick_sched_timer+0x45/0x130 kernel/time/tick-sched.c:1274
__run_hrtimer kernel/time/hrtimer.c:1398 [inline]
__hrtimer_run_queues+0x412/0x10c0 kernel/time/hrtimer.c:1460
hrtimer_interrupt+0x313/0x780 kernel/time/hrtimer.c:1518
local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1034 [inline]
smp_apic_timer_interrupt+0x1a1/0x750 arch/x86/kernel/apic/apic.c:1059
apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:804
</IRQ>
RIP: 0010:__sanitizer_cov_trace_pc+0x38/0x50 kernel/kcov.c:107
Code: 8b 15 6c 85 84 7e 81 e2 00 01 1f 00 48 8b 75 08 75 2b 8b 90 d0 12 00
00 83 fa 02 75 20 48 8b 88 d8 12 00 00 8b 80 d4 12 00 00 <48> 8b 11 48 83
c2 01 48 39 d0 76 07 48 89 34 d1 48 89 11 5d c3 0f
RSP: 0018:ffff880188456f10 EFLAGS: 00000246 ORIG_RAX: ffffffffffffff13
RAX: 0000000000040000 RBX: ffff8801884572b8 RCX: ffffc90009eda000
RDX: 0000000000000002 RSI: ffffffff81f26d3b RDI: 0000000000000006
RBP: ffff880188456f10 R08: ffff880181878600 R09: ffffed00397c3b05
R10: ffffed00397c3b05 R11: ffff8801cbe1d82f R12: 00000025c0550000
R13: dffffc0000000000 R14: 00000025c0600000 R15: ffff880188456fd0
add_to_pagemap fs/proc/task_mmu.c:1192 [inline]
pagemap_pte_hole+0x26b/0x690 fs/proc/task_mmu.c:1217
walk_pud_range mm/pagewalk.c:86 [inline]
walk_p4d_range mm/pagewalk.c:135 [inline]
walk_pgd_range mm/pagewalk.c:161 [inline]
__walk_page_range+0x6e9/0x17e0 mm/pagewalk.c:254
walk_page_range+0x255/0x520 mm/pagewalk.c:335
pagemap_read+0x8fd/0xb50 fs/proc/task_mmu.c:1509
do_loop_readv_writev fs/read_write.c:700 [inline]
do_iter_read+0x4a3/0x650 fs/read_write.c:924
vfs_readv+0x175/0x1c0 fs/read_write.c:986
kernel_readv fs/splice.c:362 [inline]
default_file_splice_read+0x53c/0xb20 fs/splice.c:417
do_splice_to+0x12e/0x190 fs/splice.c:881
splice_direct_to_actor+0x270/0x8f0 fs/splice.c:953
do_splice_direct+0x2d4/0x420 fs/splice.c:1062
do_sendfile+0x62a/0xe20 fs/read_write.c:1440
__do_sys_sendfile64 fs/read_write.c:1495 [inline]
__se_sys_sendfile64 fs/read_write.c:1487 [inline]
__x64_sys_sendfile64+0x15d/0x250 fs/read_write.c:1487
do_syscall_64+0x1b9/0x820 arch/x86/entry/common.c:290
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x457579
Code: 1d b4 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 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 0f 83 eb b3 fb ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007f55151dcc78 EFLAGS: 00000246 ORIG_RAX: 0000000000000028
RAX: ffffffffffffffda RBX: 0000000000000004 RCX: 0000000000457579
RDX: 00000000200000c0 RSI: 0000000000000007 RDI: 0000000000000004
RBP: 000000000072bf00 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000080000002 R11: 0000000000000246 R12: 00007f55151dd6d4
R13: 00000000004c34e4 R14: 00000000004d5298 R15: 00000000ffffffff
rcu: rcu_preempt kthread starved for 10502 jiffies! g27157 f0x2
RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=1
rcu: RCU grace-period kthread stack dump:
rcu_preempt R running task 22608 10 2 0x80000000
Call Trace:
context_switch kernel/sched/core.c:2830 [inline]
__schedule+0x86c/0x1ed0 kernel/sched/core.c:3479
schedule+0xfe/0x460 kernel/sched/core.c:3523
schedule_timeout+0x140/0x260 kernel/time/timer.c:1804
rcu_gp_fqs_loop+0x762/0xa80 kernel/rcu/tree.c:1934
rcu_gp_kthread+0x341/0xc70 kernel/rcu/tree.c:2090
kthread+0x35a/0x440 kernel/kthread.c:246
ret_from_fork+0x3a/0x50 arch/x86/entry/entry_64.S:352


---
This bug 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 bug report. See:
https://goo.gl/tpsmEJ#bug-status-tracking for how to communicate with
syzbot.

syzbot

unread,
Nov 7, 2018, 1:13:04 AM11/7/18
to syzkaller-upst...@googlegroups.com
syzbot has found a reproducer for the following crash on:

HEAD commit: 8053e5b93eca Merge tag 'trace-v4.20-rc1' of git://git.kern..
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=10636cd5400000
kernel config: https://syzkaller.appspot.com/x/.config?x=8f559fee2fc3375a
dashboard link: https://syzkaller.appspot.com/bug?extid=16814ff8837828e25c7d
compiler: gcc (GCC) 8.0.1 20180413 (experimental)
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=11f26983400000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=16bdbbbd400000
linu...@us.ibm.com mho...@suse.com rp...@linux.vnet.ibm.com vba...@suse.cz
ying....@intel.com]

IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by: syzbot+16814f...@syzkaller.appspotmail.com

audit: type=1400 audit(1541570759.634:36): avc: denied { map } for
pid=5844 comm="syz-executor394" path="/root/syz-executor394608217"
dev="sda1" ino=1426 scontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023
tcontext=unconfined_u:object_r:user_home_t:s0 tclass=file permissive=1
sched: DL replenish lagged too much
hrtimer: interrupt took 4865786 ns
rcu: INFO: rcu_preempt self-detected stall on CPU
rcu: 0-....: (14214 ticks this GP) idle=f0a/1/0x4000000000000002
softirq=6436/6438 fqs=5244
rcu: (t=10500 jiffies g=4517 q=5)
NMI backtrace for cpu 0
CPU: 0 PID: 5844 Comm: syz-executor394 Not tainted 4.20.0-rc1+ #102
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+0x244/0x39d lib/dump_stack.c:113
nmi_cpu_backtrace.cold.2+0x5c/0xa1 lib/nmi_backtrace.c:101
nmi_trigger_cpumask_backtrace+0x1e8/0x22a lib/nmi_backtrace.c:62
arch_trigger_cpumask_backtrace+0x14/0x20 arch/x86/kernel/apic/hw_nmi.c:38
trigger_single_cpu_backtrace include/linux/nmi.h:162 [inline]
rcu_dump_cpu_stacks+0x16f/0x1bc kernel/rcu/tree.c:1195
print_cpu_stall.cold.67+0x1f3/0x3c7 kernel/rcu/tree.c:1334
check_cpu_stall kernel/rcu/tree.c:1408 [inline]
rcu_pending kernel/rcu/tree.c:2961 [inline]
rcu_check_callbacks+0xf3b/0x13f0 kernel/rcu/tree.c:2506
update_process_times+0x2d/0x70 kernel/time/timer.c:1636
tick_sched_handle+0x9f/0x180 kernel/time/tick-sched.c:164
tick_sched_timer+0x45/0x130 kernel/time/tick-sched.c:1274
__run_hrtimer kernel/time/hrtimer.c:1398 [inline]
__hrtimer_run_queues+0x41c/0x10d0 kernel/time/hrtimer.c:1460
hrtimer_interrupt+0x313/0x780 kernel/time/hrtimer.c:1518
local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1034 [inline]
smp_apic_timer_interrupt+0x1a1/0x760 arch/x86/kernel/apic/apic.c:1059
apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:804
</IRQ>
RIP: 0010:arch_local_irq_restore arch/x86/include/asm/paravirt.h:761
[inline]
RIP: 0010:lock_acquire+0x268/0x520 kernel/locking/lockdep.c:3847
Code: 00 00 48 89 fa 48 c1 ea 03 80 3c 02 00 0f 85 44 02 00 00 48 83 3d 87
21 f0 07 00 0f 84 c3 01 00 00 48 8b bd 20 ff ff ff 57 9d <0f> 1f 44 00 00
48 b8 00 00 00 00 00 fc ff df 48 01 c3 48 c7 03 00
RSP: 0018:ffff8801c17e7058 EFLAGS: 00000286 ORIG_RAX: ffffffffffffff13
RAX: dffffc0000000000 RBX: 1ffff100382fce10 RCX: 0000000000000000
RDX: 1ffffffff12a3f76 RSI: 0000000000000000 RDI: 0000000000000286
RBP: ffff8801c17e7148 R08: ffff8801c2232ce0 R09: 0000000000000008
R10: 0000000000004e94 R11: ffff8801c2232440 R12: ffff8801c2232440
R13: 0000000000000001 R14: 0000000000000001 R15: 0000000000000000
down_read+0x8d/0x120 kernel/locking/rwsem.c:24
pagemap_read+0x8eb/0xb50 fs/proc/task_mmu.c:1510
do_loop_readv_writev fs/read_write.c:700 [inline]
do_iter_read+0x4a3/0x650 fs/read_write.c:924
vfs_readv+0x175/0x1c0 fs/read_write.c:986
kernel_readv fs/splice.c:362 [inline]
default_file_splice_read+0x539/0xb20 fs/splice.c:417
do_splice_to+0x12e/0x190 fs/splice.c:880
splice_direct_to_actor+0x270/0x8f0 fs/splice.c:952
do_splice_direct+0x2d4/0x420 fs/splice.c:1061
do_sendfile+0x62a/0xe20 fs/read_write.c:1439
__do_sys_sendfile64 fs/read_write.c:1494 [inline]
__se_sys_sendfile64 fs/read_write.c:1486 [inline]
__x64_sys_sendfile64+0x15d/0x250 fs/read_write.c:1486
do_syscall_64+0x1b9/0x820 arch/x86/entry/common.c:290
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x440369
Code: 18 89 d0 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 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 0f 83 5b 14 fc ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007fff606ea3f8 EFLAGS: 00000213 ORIG_RAX: 0000000000000028
RAX: ffffffffffffffda RBX: 00000000004002c8 RCX: 0000000000440369
RDX: 0000000020000040 RSI: 0000000000000006 RDI: 0000000000000005
RBP: 00000000006ca018 R08: 0000000000000012 R09: 65732f636f72702f
R10: 0010000000000443 R11: 0000000000000213 R12: 0000000000401c50
R13: 0000000000401ce0 R14: 0000000000000000 R15: 0000000000000000

Dmitry Vyukov

unread,
Nov 7, 2018, 10:39:40 AM11/7/18
to syzbot, syzkaller-upst...@googlegroups.com
Since repro does:

sched_setattr(0x0, &(0x7f0000000000)={0x0, 0x6, 0x0, 0x0, 0x0, 0x9917,
0xffff}, 0x0)

#syz dup: INFO: rcu detected stall in do_idle
> --
> You received this message because you are subscribed to the Google Groups
> "syzkaller-upstream-moderation" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to syzkaller-upstream-m...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/syzkaller-upstream-moderation/000000000000cc87a8057a0d0208%40google.com.
>
> For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages