INFO: task hung in do_unlinkat

4 views
Skip to first unread message

syzbot

unread,
May 23, 2018, 2:36:02 PM5/23/18
to syzkaller-upst...@googlegroups.com
Hello,

syzbot found the following crash on:

HEAD commit: a048a07d7f45 powerpc/64s: Add support for a store forwardi..
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=171e7177800000
kernel config: https://syzkaller.appspot.com/x/.config?x=982e2df1b9e60b02
dashboard link: https://syzkaller.appspot.com/bug?extid=21f96e0f403ad21a7634
compiler: gcc (GCC) 8.0.1 20180413 (experimental)
CC: [linux-...@vger.kernel.org linux-...@vger.kernel.org
vi...@zeniv.linux.org.uk]

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+21f96e...@syzkaller.appspotmail.com

b_state=0x00000021, b_size=512
device loop0 blocksize: 4096
__find_get_block_slow() failed. block=1, b_blocknr=8
b_state=0x00000021, b_size=512
device loop0 blocksize: 4096
INFO: task syz-executor0:16866 blocked for more than 120 seconds.
__find_get_block_slow() failed. block=1, b_blocknr=8
Not tainted 4.17.0-rc6+ #63
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
syz-executor0 D25408 16866 4557 0x00000004
Call Trace:
b_state=0x00000021, b_size=512
context_switch kernel/sched/core.c:2859 [inline]
__schedule+0x801/0x1e30 kernel/sched/core.c:3501
device loop0 blocksize: 4096
__find_get_block_slow() failed. block=1, b_blocknr=8
b_state=0x00000021, b_size=512
device loop0 blocksize: 4096
schedule+0xef/0x430 kernel/sched/core.c:3545
__find_get_block_slow() failed. block=1, b_blocknr=8
b_state=0x00000021, b_size=512
__rwsem_down_write_failed_common+0x919/0x15d0
kernel/locking/rwsem-xadd.c:565
device loop0 blocksize: 4096
__find_get_block_slow() failed. block=1, b_blocknr=8
b_state=0x00000021, b_size=512
device loop0 blocksize: 4096
__find_get_block_slow() failed. block=1, b_blocknr=8
b_state=0x00000021, b_size=512
device loop0 blocksize: 4096
__find_get_block_slow() failed. block=1, b_blocknr=8
b_state=0x00000021, b_size=512
rwsem_down_write_failed+0xe/0x10 kernel/locking/rwsem-xadd.c:594
device loop0 blocksize: 4096
call_rwsem_down_write_failed+0x17/0x30 arch/x86/lib/rwsem.S:117
__down_write arch/x86/include/asm/rwsem.h:142 [inline]
down_write_nested+0xa6/0x120 kernel/locking/rwsem.c:193
__find_get_block_slow() failed. block=1, b_blocknr=8
b_state=0x00000021, b_size=512
device loop0 blocksize: 4096
__find_get_block_slow() failed. block=1, b_blocknr=8
inode_lock_nested include/linux/fs.h:748 [inline]
do_unlinkat+0x3c4/0xa10 fs/namei.c:4019
b_state=0x00000021, b_size=512
device loop0 blocksize: 4096
__find_get_block_slow() failed. block=1, b_blocknr=8
b_state=0x00000021, b_size=512
device loop0 blocksize: 4096
__do_sys_unlink fs/namei.c:4080 [inline]
__se_sys_unlink fs/namei.c:4078 [inline]
__x64_sys_unlink+0x42/0x50 fs/namei.c:4078
__find_get_block_slow() failed. block=1, b_blocknr=8
do_syscall_64+0x1b1/0x800 arch/x86/entry/common.c:287
b_state=0x00000021, b_size=512
device loop0 blocksize: 4096
__find_get_block_slow() failed. block=1, b_blocknr=8
b_state=0x00000021, b_size=512
device loop0 blocksize: 4096
__find_get_block_slow() failed. block=1, b_blocknr=8
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x455a09
RSP: 002b:00007f9d163a0c68 EFLAGS: 00000246
b_state=0x00000021, b_size=512
ORIG_RAX: 0000000000000057
RAX: ffffffffffffffda RBX: 00007f9d163a16d4 RCX: 0000000000455a09
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000020000100
device loop0 blocksize: 4096
RBP: 000000000072bf50 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff
R13: 000000000000076f R14: 00000000006ff308 R15: 0000000000000001

Showing all locks held in the system:
__find_get_block_slow() failed. block=1, b_blocknr=8
2 locks held by khungtaskd/893:
b_state=0x00000021, b_size=512
device loop0 blocksize: 4096
__find_get_block_slow() failed. block=1, b_blocknr=8
#0: 00000000614932a2 (rcu_read_lock
b_state=0x00000021, b_size=512
device loop0 blocksize: 4096
){....}, at: check_hung_uninterruptible_tasks kernel/hung_task.c:175
[inline]
){....}, at: watchdog+0x1ff/0xf60 kernel/hung_task.c:249
#1:
__find_get_block_slow() failed. block=1, b_blocknr=8
0000000045a8ee8a (tasklist_lock){.+.+}
b_state=0x00000021, b_size=512
, at: debug_show_all_locks+0xde/0x34a kernel/locking/lockdep.c:4470
2 locks held by getty/4480:
device loop0 blocksize: 4096
#0: 0000000069e6642a (
__find_get_block_slow() failed. block=1, b_blocknr=8
&tty->ldisc_sem){++++}, at: ldsem_down_read+0x37/0x40
drivers/tty/tty_ldsem.c:365
#1: 00000000fb6785a8 (&ldata->atomic_read_lock){+.+.}, at:
n_tty_read+0x321/0x1cc0 drivers/tty/n_tty.c:2131
2 locks held by getty/4481:
b_state=0x00000021, b_size=512
#0: 00000000de3c7bc2 (&tty->ldisc_sem){++++}, at:
ldsem_down_read+0x37/0x40 drivers/tty/tty_ldsem.c:365
#1:
device loop0 blocksize: 4096
00000000c87d8a4d (&ldata->atomic_read_lock){+.+.}
__find_get_block_slow() failed. block=1, b_blocknr=8
, at: n_tty_read+0x321/0x1cc0 drivers/tty/n_tty.c:2131
2 locks held by getty/4482:
b_state=0x00000021, b_size=512
#0: 0000000085e52b50 (&tty->ldisc_sem){++++}, at:
ldsem_down_read+0x37/0x40 drivers/tty/tty_ldsem.c:365
#1:
device loop0 blocksize: 4096
0000000030f46cc0 (&ldata->atomic_read_lock){+.+.}
__find_get_block_slow() failed. block=1, b_blocknr=8
, at: n_tty_read+0x321/0x1cc0 drivers/tty/n_tty.c:2131
2 locks held by getty/4483:
b_state=0x00000021, b_size=512
#0: 00000000cb3f31a9 (&tty->ldisc_sem){++++}, at:
ldsem_down_read+0x37/0x40 drivers/tty/tty_ldsem.c:365
#1:
device loop0 blocksize: 4096
0000000083423bfc (&ldata->atomic_read_lock){+.+.}
__find_get_block_slow() failed. block=1, b_blocknr=8
, at: n_tty_read+0x321/0x1cc0 drivers/tty/n_tty.c:2131
2 locks held by getty/4484:
b_state=0x00000021, b_size=512
#0: 0000000098ff27dc (&tty->ldisc_sem){++++}, at:
ldsem_down_read+0x37/0x40 drivers/tty/tty_ldsem.c:365
#1:
device loop0 blocksize: 4096
000000005ce593f2 (&ldata->atomic_read_lock){+.+.}
__find_get_block_slow() failed. block=1, b_blocknr=8
, at: n_tty_read+0x321/0x1cc0 drivers/tty/n_tty.c:2131
2 locks held by getty/4485:
b_state=0x00000021, b_size=512
#0: 00000000ad873771 (&tty->ldisc_sem){++++}, at:
ldsem_down_read+0x37/0x40 drivers/tty/tty_ldsem.c:365
#1:
device loop0 blocksize: 4096
00000000cbb334eb (&ldata->atomic_read_lock){+.+.}, at:
n_tty_read+0x321/0x1cc0 drivers/tty/n_tty.c:2131
2 locks held by getty/4486:
#0:
__find_get_block_slow() failed. block=1, b_blocknr=8
000000001879c459 (&tty->ldisc_sem){++++}, at: ldsem_down_read+0x37/0x40
drivers/tty/tty_ldsem.c:365
#1:
b_state=0x00000021, b_size=512
0000000069a59ead (&ldata->atomic_read_lock){+.+.}, at:
n_tty_read+0x321/0x1cc0 drivers/tty/n_tty.c:2131
2 locks held by syz-executor0/16866:
device loop0 blocksize: 4096
#0: 000000000dc44131 (sb_writers#16){.+.+}
__find_get_block_slow() failed. block=1, b_blocknr=8
, at: sb_start_write include/linux/fs.h:1550 [inline]
, at: mnt_want_write+0x3f/0xc0 fs/namespace.c:386
#1:
b_state=0x00000021, b_size=512
0000000010b79148 (&sb->s_type->i_mutex_key#22/1){+.+.}, at:
inode_lock_nested include/linux/fs.h:748 [inline]
0000000010b79148 (&sb->s_type->i_mutex_key#22/1){+.+.}, at:
do_unlinkat+0x3c4/0xa10 fs/namei.c:4019
2 locks held by syz-executor0/16882:
device loop0 blocksize: 4096
#0: 000000000dc44131 (sb_writers
__find_get_block_slow() failed. block=1, b_blocknr=8
#16){.+.+}, at: sb_start_write include/linux/fs.h:1550 [inline]
#16){.+.+}, at: mnt_want_write+0x3f/0xc0 fs/namespace.c:386
#1:
b_state=0x00000021, b_size=512
0000000010b79148 (&sb->s_type->i_mutex_key#22/1){+.+.}, at:
inode_lock_nested include/linux/fs.h:748 [inline]
0000000010b79148 (&sb->s_type->i_mutex_key#22/1){+.+.}, at:
filename_create+0x1aa/0x5a0 fs/namei.c:3606
2 locks held by syz-executor0/16899:
device loop0 blocksize: 4096
#0: 000000000dc44131 (
__find_get_block_slow() failed. block=1, b_blocknr=8
sb_writers#16){.+.+}, at: sb_start_write include/linux/fs.h:1550 [inline]
sb_writers#16){.+.+}, at: mnt_want_write+0x3f/0xc0 fs/namespace.c:386
#1:
b_state=0x00000021, b_size=512
0000000010b79148 (&sb->s_type->i_mutex_key#22/1){+.+.}, at:
inode_lock_nested include/linux/fs.h:748 [inline]
0000000010b79148 (&sb->s_type->i_mutex_key#22/1){+.+.}, at:
lock_rename+0x236/0x290 fs/namei.c:2809
2 locks held by syz-executor0/16900:
device loop0 blocksize: 4096
#0: 000000000dc44131 (
__find_get_block_slow() failed. block=1, b_blocknr=8
sb_writers#16){.+.+}, at: sb_start_write include/linux/fs.h:1550 [inline]
sb_writers#16){.+.+}, at: mnt_want_write+0x3f/0xc0 fs/namespace.c:386
#1:
b_state=0x00000021, b_size=512
0000000010b79148 (&sb->s_type->i_mutex_key#22/1){+.+.}, at:
inode_lock_nested include/linux/fs.h:748 [inline]
0000000010b79148 (&sb->s_type->i_mutex_key#22/1){+.+.}, at:
do_unlinkat+0x3c4/0xa10 fs/namei.c:4019

device loop0 blocksize: 4096
=============================================

NMI backtrace for cpu 1
CPU: 1 PID: 893 Comm: khungtaskd Not tainted 4.17.0-rc6+ #63
__find_get_block_slow() failed. block=1, b_blocknr=8
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
Google 01/01/2011
Call Trace:
__dump_stack lib/dump_stack.c:77 [inline]
dump_stack+0x1b9/0x294 lib/dump_stack.c:113
b_state=0x00000021, b_size=512
nmi_cpu_backtrace.cold.4+0x19/0xce lib/nmi_backtrace.c:103
nmi_trigger_cpumask_backtrace+0x151/0x192 lib/nmi_backtrace.c:62
arch_trigger_cpumask_backtrace+0x14/0x20 arch/x86/kernel/apic/hw_nmi.c:38
device loop0 blocksize: 4096
trigger_all_cpu_backtrace include/linux/nmi.h:138 [inline]
check_hung_task kernel/hung_task.c:132 [inline]
check_hung_uninterruptible_tasks kernel/hung_task.c:190 [inline]
watchdog+0xc10/0xf60 kernel/hung_task.c:249
__find_get_block_slow() failed. block=1, b_blocknr=8
b_state=0x00000021, b_size=512
kthread+0x345/0x410 kernel/kthread.c:240
device loop0 blocksize: 4096
ret_from_fork+0x3a/0x50 arch/x86/entry/entry_64.S:412
Sending NMI from CPU 1 to CPUs 0:
__find_get_block_slow() failed. block=1, b_blocknr=8
NMI backtrace for cpu 0
CPU: 0 PID: 16803 Comm: syz-executor0 Not tainted 4.17.0-rc6+ #63
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
Google 01/01/2011
RIP: 0010:__next_timer_interrupt+0x0/0x1a0 kernel/time/timer.c:1230
RSP: 0018:ffff8801dae07978 EFLAGS: 00000006
RAX: ffff8801816865c0 RBX: 0000000000000003 RCX: ffffffff8166fc2c
RDX: 0000000000000100 RSI: ffffffff8166fc37 RDI: ffff8801dae23700
RBP: ffff8801dae07c70 R08: ffff8801816865c0 R09: ffffed003b5c46e0
R10: ffffed003b5c46e0 R11: ffff8801dae23703 R12: 00000001000112b0
R13: 0000000000000001 R14: ffff8801dae07c48 R15: dffffc0000000000
FS: 00007f9d163c2700(0000) GS:ffff8801dae00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000001b77000 CR3: 00000001cf1a5000 CR4: 00000000001406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<IRQ>
run_timer_softirq+0x4c/0x70 kernel/time/timer.c:1692
__do_softirq+0x2e0/0xaf5 kernel/softirq.c:285
invoke_softirq kernel/softirq.c:365 [inline]
irq_exit+0x1d1/0x200 kernel/softirq.c:405
exiting_irq arch/x86/include/asm/apic.h:525 [inline]
smp_apic_timer_interrupt+0x17e/0x710 arch/x86/kernel/apic/apic.c:1052
apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:863
</IRQ>
RIP: 0010:arch_local_irq_restore arch/x86/include/asm/paravirt.h:783
[inline]
RIP: 0010:console_trylock_spinning kernel/printk/printk.c:1678 [inline]
RIP: 0010:vprintk_emit+0xbd0/0xdd0 kernel/printk/printk.c:1906
RSP: 0018:ffff8801ae676c60 EFLAGS: 00000246 ORIG_RAX: ffffffffffffff13
RAX: 0000000000040000 RBX: 0000000000000200 RCX: ffffc90001ea8000
RDX: 0000000000040000 RSI: ffffffff8160d0c7 RDI: 0000000000000246
RBP: ffff8801ae676df0 R08: ffff880181686df8 R09: 0000000000000006
R10: ffff8801816865c0 R11: 0000000000000000 R12: 1ffffffff11a31ad
R13: 0000000000000034 R14: ffffed0035cceda9 R15: ffffffff8a6d4360
vprintk_default+0x28/0x30 kernel/printk/printk.c:1947
vprintk_func+0x7a/0xe7 kernel/printk/printk_safe.c:379
printk+0x9e/0xba kernel/printk/printk.c:1980
__find_get_block_slow fs/buffer.c:231 [inline]
__find_get_block.cold.58+0x3a/0x103 fs/buffer.c:1287
__getblk_slow fs/buffer.c:1032 [inline]
__getblk_gfp+0x2a1/0xaf0 fs/buffer.c:1313
__bread_gfp+0x2d/0x310 fs/buffer.c:1347
sb_bread include/linux/buffer_head.h:309 [inline]
fat__get_entry+0x594/0xa20 fs/fat/dir.c:101
fat_get_entry fs/fat/dir.c:129 [inline]
fat_search_long+0x33b/0x15d0 fs/fat/dir.c:477
vfat_find+0x16d/0x1a0 fs/fat/namei_vfat.c:697
vfat_rename+0x261/0x1590 fs/fat/namei_vfat.c:925
vfs_rename+0x670/0x1ac0 fs/namei.c:4449
do_renameat2+0xe96/0x1150 fs/namei.c:4597
__do_sys_rename fs/namei.c:4643 [inline]
__se_sys_rename fs/namei.c:4641 [inline]
__x64_sys_rename+0x5e/0x80 fs/namei.c:4641
do_syscall_64+0x1b1/0x800 arch/x86/entry/common.c:287
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x455a09
RSP: 002b:00007f9d163c1c68 EFLAGS: 00000246 ORIG_RAX: 0000000000000052
RAX: ffffffffffffffda RBX: 00007f9d163c26d4 RCX: 0000000000455a09
RDX: 0000000000000000 RSI: 00000000200000c0 RDI: 0000000020000080
RBP: 000000000072bea0 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff
R13: 000000000000054e R14: 00000000006fbff0 R15: 0000000000000000
Code: 60 5b 41 5c 41 5d 41 5e 41 5f 5d c3 41 bd ff ff ff ff eb 9f e8 62 c7
4e 00 e9 76 ff ff ff e8 58 c7 4e 00 eb ae 66 0f 1f 44 00 00 <55> 48 89 e5
41 57 41 56 41 55 41 54 49 89 fc 53 48 83 ec 18 e8
INFO: NMI handler (nmi_cpu_backtrace_handler) took too long to run: 1.436
msecs


---
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.
Reply all
Reply to author
Forward
0 new messages