BUG: sleeping function called from invalid context in do_con_write

6 views
Skip to first unread message

syzbot

unread,
Jul 25, 2020, 9:21:18 PM7/25/20
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 69b94dd6 Linux 4.14.189
git tree: linux-4.14.y
console output: https://syzkaller.appspot.com/x/log.txt?x=1220dc54900000
kernel config: https://syzkaller.appspot.com/x/.config?x=80d63ff414fa81b0
dashboard link: https://syzkaller.appspot.com/bug?extid=44d985cea44287b4ecea
compiler: gcc (GCC) 10.1.0-syz 20200507

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+44d985...@syzkaller.appspotmail.com

print_req_error: I/O error, dev loop0, sector 0
Buffer I/O error on dev loop0, logical block 0, async page read
ldm_validate_partition_table(): Disk read failed.
print_req_error: I/O error, dev loop0, sector 0
Buffer I/O error on dev loop0, logical block 0, async page read
BUG: sleeping function called from invalid context at drivers/tty/vt/vt.c:2221
print_req_error: I/O error, dev loop0, sector 0
in_atomic(): 1, irqs_disabled(): 1, pid: 22866, name: syz-executor.4
3 locks held by syz-executor.4/22866:
#0: (&tty->ldisc_sem){++++}, at: [<ffffffff8343c652>] tty_ldisc_ref_wait+0x22/0x80 drivers/tty/tty_ldisc.c:284
#1: (&(&tty->flow_lock)->rlock){....}, at: [<ffffffff8343bbd0>] spin_lock_irq include/linux/spinlock.h:342 [inline]
#1: (&(&tty->flow_lock)->rlock){....}, at: [<ffffffff8343bbd0>] n_tty_ioctl_helper+0xa0/0x350 drivers/tty/tty_ioctl.c:913
#2: (&tty->ldisc_sem){++++}, at: [<ffffffff8343c70b>] tty_ldisc_ref+0x1b/0x80 drivers/tty/tty_ldisc.c:305
irq event stamp: 480
hardirqs last enabled at (479): [<ffffffff81006ddc>] do_syscall_64+0x4c/0x640 arch/x86/entry/common.c:280
hardirqs last disabled at (480): [<ffffffff86520ff5>] __raw_spin_lock_irq include/linux/spinlock_api_smp.h:126 [inline]
hardirqs last disabled at (480): [<ffffffff86520ff5>] _raw_spin_lock_irq+0x35/0x80 kernel/locking/spinlock.c:168
softirqs last enabled at (204): [<ffffffff868006ab>] __do_softirq+0x6ab/0xa1d kernel/softirq.c:314
Buffer I/O error on dev loop0, logical block 0, async page read
softirqs last disabled at (119): [<ffffffff813773f3>] invoke_softirq kernel/softirq.c:368 [inline]
softirqs last disabled at (119): [<ffffffff813773f3>] irq_exit+0x193/0x240 kernel/softirq.c:409
Preemption disabled at:
[< (null)>] (null)
CPU: 1 PID: 22866 Comm: syz-executor.4 Not tainted 4.14.189-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
__dump_stack lib/dump_stack.c:17 [inline]
dump_stack+0x1b2/0x283 lib/dump_stack.c:58
___might_sleep.cold+0x235/0x250 kernel/sched/core.c:6042
do_con_write+0xd0/0x19b0 drivers/tty/vt/vt.c:2221
con_write+0x21/0xa0 drivers/tty/vt/vt.c:2798
n_hdlc_send_frames+0x241/0x410 drivers/tty/n_hdlc.c:404
n_hdlc_tty_wakeup+0x95/0xb0 drivers/tty/n_hdlc.c:480
Dev loop0: unable to read RDB block 0
tty_wakeup+0xc3/0xf0 drivers/tty/tty_io.c:533
__start_tty drivers/tty/tty_io.c:805 [inline]
__start_tty+0x10b/0x140 drivers/tty/tty_io.c:798
loop0: unable to read partition table
n_tty_ioctl_helper+0x2f8/0x350 drivers/tty/tty_ioctl.c:916
n_hdlc_tty_ioctl+0xd4/0x300 drivers/tty/n_hdlc.c:784
tty_ioctl+0x5af/0x13c0 drivers/tty/tty_io.c:2670
vfs_ioctl fs/ioctl.c:46 [inline]
file_ioctl fs/ioctl.c:500 [inline]
do_vfs_ioctl+0x75a/0xff0 fs/ioctl.c:684
SYSC_ioctl fs/ioctl.c:701 [inline]
SyS_ioctl+0x7f/0xb0 fs/ioctl.c:692
do_syscall_64+0x1d5/0x640 arch/x86/entry/common.c:292
entry_SYSCALL_64_after_hwframe+0x46/0xbb
RIP: 0033:0x45c369
RSP: 002b:00007f38ae9cec78 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 0000000000017540 RCX: 000000000045c369
RDX: 0000000000000001 RSI: 000000000000540a RDI: 0000000000000006
RBP: 000000000078bf40 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 000000000078bf0c
R13: 00007ffe289e901f R14: 00007f38ae9cf9c0 R15: 000000000078bf0c
ldm_validate_partition_table(): Disk read failed.
Dev loop0: unable to read RDB block 0
loop0: unable to read partition table
ptrace attach of "/root/syz-executor.5"[22950] was attempted by "/root/syz-executor.5"[22953]
ptrace attach of "/root/syz-executor.5"[22964] was attempted by "/root/syz-executor.5"[22966]
ldm_validate_partition_table(): Disk read failed.
Dev loop0: unable to read RDB block 0
loop0: unable to read partition table
ptrace attach of "/root/syz-executor.5"[22986] was attempted by "/root/syz-executor.5"[22989]
nla_parse: 6 callbacks suppressed
netlink: 40 bytes leftover after parsing attributes in process `syz-executor.1'.
ptrace attach of "/root/syz-executor.5"[23000] was attempted by "/root/syz-executor.5"[23003]
netlink: 40 bytes leftover after parsing attributes in process `syz-executor.1'.
ptrace attach of "/root/syz-executor.5"[23022] was attempted by "/root/syz-executor.5"[23026]
ldm_validate_partition_table(): Disk read failed.
netlink: 40 bytes leftover after parsing attributes in process `syz-executor.1'.
Dev loop0: unable to read RDB block 0
loop0: unable to read partition table
ptrace attach of "/root/syz-executor.5"[23056] was attempted by "/root/syz-executor.5"[23058]
netlink: 40 bytes leftover after parsing attributes in process `syz-executor.1'.
ptrace attach of "/root/syz-executor.5"[23077] was attempted by "/root/syz-executor.5"[23079]
netlink: 40 bytes leftover after parsing attributes in process `syz-executor.1'.
ptrace attach of "/root/syz-executor.5"[23094] was attempted by "/root/syz-executor.5"[23095]
netlink: 40 bytes leftover after parsing attributes in process `syz-executor.1'.
ptrace attach of "/root/syz-executor.5"[23107] was attempted by "/root/syz-executor.5"[23109]
ldm_validate_partition_table(): Disk read failed.
Dev loop0: unable to read RDB block 0
loop0: unable to read partition table
netlink: 20 bytes leftover after parsing attributes in process `syz-executor.1'.
netlink: 20 bytes leftover after parsing attributes in process `syz-executor.1'.
netlink: 20 bytes leftover after parsing attributes in process `syz-executor.1'.
netlink: 40 bytes leftover after parsing attributes in process `syz-executor.1'.
print_req_error: 115 callbacks suppressed
print_req_error: I/O error, dev loop0, sector 0
buffer_io_error: 115 callbacks suppressed
Buffer I/O error on dev loop0, logical block 0, async page read
print_req_error: I/O error, dev loop0, sector 0
Buffer I/O error on dev loop0, logical block 0, async page read
print_req_error: I/O error, dev loop0, sector 0
Buffer I/O error on dev loop0, logical block 0, async page read
print_req_error: I/O error, dev loop0, sector 0
Buffer I/O error on dev loop0, logical block 0, async page read
print_req_error: I/O error, dev loop0, sector 0
Buffer I/O error on dev loop0, logical block 0, async page read
print_req_error: I/O error, dev loop0, sector 0
Buffer I/O error on dev loop0, logical block 0, async page read
print_req_error: I/O error, dev loop0, sector 0
Buffer I/O error on dev loop0, logical block 0, async page read
print_req_error: I/O error, dev loop0, sector 0
Buffer I/O error on dev loop0, logical block 0, async page read
ldm_validate_partition_table(): Disk read failed.
print_req_error: I/O error, dev loop0, sector 0
Buffer I/O error on dev loop0, logical block 0, async page read
print_req_error: I/O error, dev loop0, sector 0
Buffer I/O error on dev loop0, logical block 0, async page read
Dev loop0: unable to read RDB block 0
loop0: unable to read partition table
ldm_validate_partition_table(): Disk read failed.
Dev loop0: unable to read RDB block 0
loop0: unable to read partition table
ldm_validate_partition_table(): Disk read failed.
Dev loop0: unable to read RDB block 0
loop0: unable to read partition table
ldm_validate_partition_table(): Disk read failed.
Dev loop0: unable to read RDB block 0
loop0: unable to read partition table
nla_parse: 6 callbacks suppressed
netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'.
netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'.
netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'.
netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'.
netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'.
netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'.
netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'.
netlink: 24 bytes leftover after parsing attributes in process `syz-executor.1'.


---
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,
Nov 22, 2020, 8:21:16 PM11/22/20
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