lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Mon, 20 Jun 2022 10:50:11 +0200
From:   Dmitry Vyukov <dvyukov@...gle.com>
To:     Christoph Hellwig <hch@...radead.org>
Cc:     syzbot <syzbot+4fe838aeddc9710946ca@...kaller.appspotmail.com>,
        axboe@...nel.dk, linux-block@...r.kernel.org,
        linux-kernel@...r.kernel.org, mingo@...hat.com,
        rostedt@...dmis.org, syzkaller-bugs@...glegroups.com
Subject: Re: [syzbot] BUG: sleeping function called from invalid context in relay_open_buf

/\/\/\/\/\/\/\/\/\/\/\/\On Mon, 20 Jun 2022 at 09:31, Christoph
Hellwig <hch@...radead.org> wrote:
>
> This looks pretty odd to me.  I can't really see anything that
> would cause an atomic context (spinlock, irq disabling) anywhere near
> blk_trace_ioctl.
>
> On Sat, Jun 18, 2022 at 05:16:23AM -0700, syzbot wrote:
> > Hello,
> >
> > syzbot found the following issue on:
> >
> > HEAD commit:    6012273897fe Add linux-next specific files for 20220615
> > git tree:       linux-next
> > console output: https://syzkaller.appspot.com/x/log.txt?x=16406cb0080000
> > kernel config:  https://syzkaller.appspot.com/x/.config?x=b4154677977b1776
> > dashboard link: https://syzkaller.appspot.com/bug?extid=4fe838aeddc9710946ca
> > compiler:       gcc (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2
> >
> > 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+4fe838aeddc9710946ca@...kaller.appspotmail.com
> >
> > BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274
> > in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 10461, name: syz-executor.5
> > preempt_count: 1, expected: 0
> > RCU nest depth: 0, expected: 0
> > 2 locks held by syz-executor.5/10461:
> >  #0: ffff888146a4f718 (&q->debugfs_mutex){+.+.}-{3:3}, at: blk_trace_ioctl+0xa9/0x270 kernel/trace/blktrace.c:735
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open kernel/relay.c:518 [inline]
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open+0x389/0xa00 kernel/relay.c:477
> > Preemption disabled at:
> > [<ffffffff81bc96e5>] rmqueue_pcplist mm/page_alloc.c:3813 [inline]
> > [<ffffffff81bc96e5>] rmqueue mm/page_alloc.c:3858 [inline]
> > [<ffffffff81bc96e5>] get_page_from_freelist+0x455/0x3a20 mm/page_alloc.c:4293

/\/\/\/\/\/\/\/\/\/\/\/\

Maybe this is the unclosed left-over disable?


> > CPU: 0 PID: 10461 Comm: syz-executor.5 Not tainted 5.19.0-rc2-next-20220615-syzkaller #0
> > Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
> > Call Trace:
> >  <TASK>
> >  __dump_stack lib/dump_stack.c:88 [inline]
> >  dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
> >  __might_resched.cold+0x222/0x26b kernel/sched/core.c:9823
> >  might_alloc include/linux/sched/mm.h:274 [inline]
> >  prepare_alloc_pages+0x3d8/0x570 mm/page_alloc.c:5290
> >  __alloc_pages+0x145/0x510 mm/page_alloc.c:5501
> >  alloc_pages+0x1aa/0x310 mm/mempolicy.c:2279
> >  relay_alloc_buf kernel/relay.c:124 [inline]
> >  relay_create_buf kernel/relay.c:165 [inline]
> >  relay_open_buf.part.0+0x2a7/0xc00 kernel/relay.c:387
> >  relay_open_buf kernel/relay.c:384 [inline]
> >  relay_open kernel/relay.c:520 [inline]
> >  relay_open+0x4fb/0xa00 kernel/relay.c:477
> >  do_blk_trace_setup+0x4bc/0xb60 kernel/trace/blktrace.c:559
> >  __blk_trace_setup+0xca/0x180 kernel/trace/blktrace.c:599
> >  blk_trace_ioctl+0x13b/0x270 kernel/trace/blktrace.c:740
> >  blkdev_ioctl+0x181/0x800 block/ioctl.c:603
> >  vfs_ioctl fs/ioctl.c:51 [inline]
> >  __do_sys_ioctl fs/ioctl.c:870 [inline]
> >  __se_sys_ioctl fs/ioctl.c:856 [inline]
> >  __x64_sys_ioctl+0x193/0x200 fs/ioctl.c:856
> >  do_syscall_x64 arch/x86/entry/common.c:50 [inline]
> >  do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
> >  entry_SYSCALL_64_after_hwframe+0x46/0xb0
> > RIP: 0033:0x7f2933089109
> > 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 b8 ff ff ff f7 d8 64 89 01 48
> > RSP: 002b:00007f2934150168 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> > RAX: ffffffffffffffda RBX: 00007f293319bf60 RCX: 00007f2933089109
> > RDX: 0000000020000080 RSI: 00000000c0481273 RDI: 0000000000000003
> > RBP: 00007f29330e305d R08: 0000000000000000 R09: 0000000000000000
> > R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> > R13: 00007ffe5646271f R14: 00007f2934150300 R15: 0000000000022000
> >  </TASK>
> > BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274
> > in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 10461, name: syz-executor.5
> > preempt_count: 1, expected: 0
> > RCU nest depth: 0, expected: 0
> > 2 locks held by syz-executor.5/10461:
> >  #0: ffff888146a4f718 (&q->debugfs_mutex){+.+.}-{3:3}, at: blk_trace_ioctl+0xa9/0x270 kernel/trace/blktrace.c:735
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open kernel/relay.c:518 [inline]
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open+0x389/0xa00 kernel/relay.c:477
> > Preemption disabled at:
> > [<ffffffff81bc96e5>] rmqueue_pcplist mm/page_alloc.c:3813 [inline]
> > [<ffffffff81bc96e5>] rmqueue mm/page_alloc.c:3858 [inline]
> > [<ffffffff81bc96e5>] get_page_from_freelist+0x455/0x3a20 mm/page_alloc.c:4293
> > CPU: 0 PID: 10461 Comm: syz-executor.5 Tainted: G        W         5.19.0-rc2-next-20220615-syzkaller #0
> > Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
> > Call Trace:
> >  <TASK>
> >  __dump_stack lib/dump_stack.c:88 [inline]
> >  dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
> >  __might_resched.cold+0x222/0x26b kernel/sched/core.c:9823
> >  might_alloc include/linux/sched/mm.h:274 [inline]
> >  prepare_alloc_pages+0x3d8/0x570 mm/page_alloc.c:5290
> >  __alloc_pages+0x145/0x510 mm/page_alloc.c:5501
> >  alloc_pages+0x1aa/0x310 mm/mempolicy.c:2279
> >  relay_alloc_buf kernel/relay.c:124 [inline]
> >  relay_create_buf kernel/relay.c:165 [inline]
> >  relay_open_buf.part.0+0x2a7/0xc00 kernel/relay.c:387
> >  relay_open_buf kernel/relay.c:384 [inline]
> >  relay_open kernel/relay.c:520 [inline]
> >  relay_open+0x4fb/0xa00 kernel/relay.c:477
> >  do_blk_trace_setup+0x4bc/0xb60 kernel/trace/blktrace.c:559
> >  __blk_trace_setup+0xca/0x180 kernel/trace/blktrace.c:599
> >  blk_trace_ioctl+0x13b/0x270 kernel/trace/blktrace.c:740
> >  blkdev_ioctl+0x181/0x800 block/ioctl.c:603
> >  vfs_ioctl fs/ioctl.c:51 [inline]
> >  __do_sys_ioctl fs/ioctl.c:870 [inline]
> >  __se_sys_ioctl fs/ioctl.c:856 [inline]
> >  __x64_sys_ioctl+0x193/0x200 fs/ioctl.c:856
> >  do_syscall_x64 arch/x86/entry/common.c:50 [inline]
> >  do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
> >  entry_SYSCALL_64_after_hwframe+0x46/0xb0
> > RIP: 0033:0x7f2933089109
> > 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 b8 ff ff ff f7 d8 64 89 01 48
> > RSP: 002b:00007f2934150168 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> > RAX: ffffffffffffffda RBX: 00007f293319bf60 RCX: 00007f2933089109
> > RDX: 0000000020000080 RSI: 00000000c0481273 RDI: 0000000000000003
> > RBP: 00007f29330e305d R08: 0000000000000000 R09: 0000000000000000
> > R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> > R13: 00007ffe5646271f R14: 00007f2934150300 R15: 0000000000022000
> >  </TASK>
> > BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274
> > in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 10461, name: syz-executor.5
> > preempt_count: 1, expected: 0
> > RCU nest depth: 0, expected: 0
> > 2 locks held by syz-executor.5/10461:
> >  #0: ffff888146a4f718 (&q->debugfs_mutex){+.+.}-{3:3}, at: blk_trace_ioctl+0xa9/0x270 kernel/trace/blktrace.c:735
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open kernel/relay.c:518 [inline]
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open+0x389/0xa00 kernel/relay.c:477
> > Preemption disabled at:
> > [<ffffffff81bc96e5>] rmqueue_pcplist mm/page_alloc.c:3813 [inline]
> > [<ffffffff81bc96e5>] rmqueue mm/page_alloc.c:3858 [inline]
> > [<ffffffff81bc96e5>] get_page_from_freelist+0x455/0x3a20 mm/page_alloc.c:4293
> > CPU: 0 PID: 10461 Comm: syz-executor.5 Tainted: G        W         5.19.0-rc2-next-20220615-syzkaller #0
> > Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
> > Call Trace:
> >  <TASK>
> >  __dump_stack lib/dump_stack.c:88 [inline]
> >  dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
> >  __might_resched.cold+0x222/0x26b kernel/sched/core.c:9823
> >  might_alloc include/linux/sched/mm.h:274 [inline]
> >  prepare_alloc_pages+0x3d8/0x570 mm/page_alloc.c:5290
> >  __alloc_pages+0x145/0x510 mm/page_alloc.c:5501
> >  alloc_pages+0x1aa/0x310 mm/mempolicy.c:2279
> >  relay_alloc_buf kernel/relay.c:124 [inline]
> >  relay_create_buf kernel/relay.c:165 [inline]
> >  relay_open_buf.part.0+0x2a7/0xc00 kernel/relay.c:387
> >  relay_open_buf kernel/relay.c:384 [inline]
> >  relay_open kernel/relay.c:520 [inline]
> >  relay_open+0x4fb/0xa00 kernel/relay.c:477
> >  do_blk_trace_setup+0x4bc/0xb60 kernel/trace/blktrace.c:559
> >  __blk_trace_setup+0xca/0x180 kernel/trace/blktrace.c:599
> >  blk_trace_ioctl+0x13b/0x270 kernel/trace/blktrace.c:740
> >  blkdev_ioctl+0x181/0x800 block/ioctl.c:603
> >  vfs_ioctl fs/ioctl.c:51 [inline]
> >  __do_sys_ioctl fs/ioctl.c:870 [inline]
> >  __se_sys_ioctl fs/ioctl.c:856 [inline]
> >  __x64_sys_ioctl+0x193/0x200 fs/ioctl.c:856
> >  do_syscall_x64 arch/x86/entry/common.c:50 [inline]
> >  do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
> >  entry_SYSCALL_64_after_hwframe+0x46/0xb0
> > RIP: 0033:0x7f2933089109
> > 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 b8 ff ff ff f7 d8 64 89 01 48
> > RSP: 002b:00007f2934150168 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> > RAX: ffffffffffffffda RBX: 00007f293319bf60 RCX: 00007f2933089109
> > RDX: 0000000020000080 RSI: 00000000c0481273 RDI: 0000000000000003
> > RBP: 00007f29330e305d R08: 0000000000000000 R09: 0000000000000000
> > R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> > R13: 00007ffe5646271f R14: 00007f2934150300 R15: 0000000000022000
> >  </TASK>
> > BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274
> > in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 10461, name: syz-executor.5
> > preempt_count: 1, expected: 0
> > RCU nest depth: 0, expected: 0
> > 2 locks held by syz-executor.5/10461:
> >  #0: ffff888146a4f718 (&q->debugfs_mutex){+.+.}-{3:3}, at: blk_trace_ioctl+0xa9/0x270 kernel/trace/blktrace.c:735
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open kernel/relay.c:518 [inline]
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open+0x389/0xa00 kernel/relay.c:477
> > Preemption disabled at:
> > [<ffffffff81bc96e5>] rmqueue_pcplist mm/page_alloc.c:3813 [inline]
> > [<ffffffff81bc96e5>] rmqueue mm/page_alloc.c:3858 [inline]
> > [<ffffffff81bc96e5>] get_page_from_freelist+0x455/0x3a20 mm/page_alloc.c:4293
> > CPU: 0 PID: 10461 Comm: syz-executor.5 Tainted: G        W         5.19.0-rc2-next-20220615-syzkaller #0
> > Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
> > Call Trace:
> >  <TASK>
> >  __dump_stack lib/dump_stack.c:88 [inline]
> >  dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
> >  __might_resched.cold+0x222/0x26b kernel/sched/core.c:9823
> >  might_alloc include/linux/sched/mm.h:274 [inline]
> >  prepare_alloc_pages+0x3d8/0x570 mm/page_alloc.c:5290
> >  __alloc_pages+0x145/0x510 mm/page_alloc.c:5501
> >  alloc_pages+0x1aa/0x310 mm/mempolicy.c:2279
> >  relay_alloc_buf kernel/relay.c:124 [inline]
> >  relay_create_buf kernel/relay.c:165 [inline]
> >  relay_open_buf.part.0+0x2a7/0xc00 kernel/relay.c:387
> >  relay_open_buf kernel/relay.c:384 [inline]
> >  relay_open kernel/relay.c:520 [inline]
> >  relay_open+0x4fb/0xa00 kernel/relay.c:477
> >  do_blk_trace_setup+0x4bc/0xb60 kernel/trace/blktrace.c:559
> >  __blk_trace_setup+0xca/0x180 kernel/trace/blktrace.c:599
> >  blk_trace_ioctl+0x13b/0x270 kernel/trace/blktrace.c:740
> >  blkdev_ioctl+0x181/0x800 block/ioctl.c:603
> >  vfs_ioctl fs/ioctl.c:51 [inline]
> >  __do_sys_ioctl fs/ioctl.c:870 [inline]
> >  __se_sys_ioctl fs/ioctl.c:856 [inline]
> >  __x64_sys_ioctl+0x193/0x200 fs/ioctl.c:856
> >  do_syscall_x64 arch/x86/entry/common.c:50 [inline]
> >  do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
> >  entry_SYSCALL_64_after_hwframe+0x46/0xb0
> > RIP: 0033:0x7f2933089109
> > 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 b8 ff ff ff f7 d8 64 89 01 48
> > RSP: 002b:00007f2934150168 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> > RAX: ffffffffffffffda RBX: 00007f293319bf60 RCX: 00007f2933089109
> > RDX: 0000000020000080 RSI: 00000000c0481273 RDI: 0000000000000003
> > RBP: 00007f29330e305d R08: 0000000000000000 R09: 0000000000000000
> > R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> > R13: 00007ffe5646271f R14: 00007f2934150300 R15: 0000000000022000
> >  </TASK>
> > BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274
> > in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 10461, name: syz-executor.5
> > preempt_count: 2, expected: 0
> > RCU nest depth: 0, expected: 0
> > 2 locks held by syz-executor.5/10461:
> >  #0: ffff888146a4f718 (&q->debugfs_mutex){+.+.}-{3:3}, at: blk_trace_ioctl+0xa9/0x270 kernel/trace/blktrace.c:735
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open kernel/relay.c:518 [inline]
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open+0x389/0xa00 kernel/relay.c:477
> > Preemption disabled at:
> > [<ffffffff81bc96e5>] rmqueue_pcplist mm/page_alloc.c:3813 [inline]
> > [<ffffffff81bc96e5>] rmqueue mm/page_alloc.c:3858 [inline]
> > [<ffffffff81bc96e5>] get_page_from_freelist+0x455/0x3a20 mm/page_alloc.c:4293
> > CPU: 0 PID: 10461 Comm: syz-executor.5 Tainted: G        W         5.19.0-rc2-next-20220615-syzkaller #0
> > Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
> > Call Trace:
> >  <TASK>
> >  __dump_stack lib/dump_stack.c:88 [inline]
> >  dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
> >  __might_resched.cold+0x222/0x26b kernel/sched/core.c:9823
> >  might_alloc include/linux/sched/mm.h:274 [inline]
> >  prepare_alloc_pages+0x3d8/0x570 mm/page_alloc.c:5290
> >  __alloc_pages+0x145/0x510 mm/page_alloc.c:5501
> >  alloc_pages+0x1aa/0x310 mm/mempolicy.c:2279
> >  relay_alloc_buf kernel/relay.c:124 [inline]
> >  relay_create_buf kernel/relay.c:165 [inline]
> >  relay_open_buf.part.0+0x2a7/0xc00 kernel/relay.c:387
> >  relay_open_buf kernel/relay.c:384 [inline]
> >  relay_open kernel/relay.c:520 [inline]
> >  relay_open+0x4fb/0xa00 kernel/relay.c:477
> >  do_blk_trace_setup+0x4bc/0xb60 kernel/trace/blktrace.c:559
> >  __blk_trace_setup+0xca/0x180 kernel/trace/blktrace.c:599
> >  blk_trace_ioctl+0x13b/0x270 kernel/trace/blktrace.c:740
> >  blkdev_ioctl+0x181/0x800 block/ioctl.c:603
> >  vfs_ioctl fs/ioctl.c:51 [inline]
> >  __do_sys_ioctl fs/ioctl.c:870 [inline]
> >  __se_sys_ioctl fs/ioctl.c:856 [inline]
> >  __x64_sys_ioctl+0x193/0x200 fs/ioctl.c:856
> >  do_syscall_x64 arch/x86/entry/common.c:50 [inline]
> >  do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
> >  entry_SYSCALL_64_after_hwframe+0x46/0xb0
> > RIP: 0033:0x7f2933089109
> > Code: Unable to access opcode bytes at RIP 0x7f29330890df.
> > RSP: 002b:00007f2934150168 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> > RAX: ffffffffffffffda RBX: 00007f293319bf60 RCX: 00007f2933089109
> > RDX: 0000000020000080 RSI: 00000000c0481273 RDI: 0000000000000003
> > RBP: 00007f29330e305d R08: 0000000000000000 R09: 0000000000000000
> > R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> > R13: 00007ffe5646271f R14: 00007f2934150300 R15: 0000000000022000
> >  </TASK>
> > BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274
> > in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 10461, name: syz-executor.5
> > preempt_count: 2, expected: 0
> > RCU nest depth: 0, expected: 0
> > 2 locks held by syz-executor.5/10461:
> >  #0: ffff888146a4f718 (&q->debugfs_mutex){+.+.}-{3:3}, at: blk_trace_ioctl+0xa9/0x270 kernel/trace/blktrace.c:735
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open kernel/relay.c:518 [inline]
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open+0x389/0xa00 kernel/relay.c:477
> > Preemption disabled at:
> > [<ffffffff81bc96e5>] rmqueue_pcplist mm/page_alloc.c:3813 [inline]
> > [<ffffffff81bc96e5>] rmqueue mm/page_alloc.c:3858 [inline]
> > [<ffffffff81bc96e5>] get_page_from_freelist+0x455/0x3a20 mm/page_alloc.c:4293
> > CPU: 0 PID: 10461 Comm: syz-executor.5 Tainted: G        W         5.19.0-rc2-next-20220615-syzkaller #0
> > Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
> > Call Trace:
> >  <TASK>
> >  __dump_stack lib/dump_stack.c:88 [inline]
> >  dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
> >  __might_resched.cold+0x222/0x26b kernel/sched/core.c:9823
> >  might_alloc include/linux/sched/mm.h:274 [inline]
> >  prepare_alloc_pages+0x3d8/0x570 mm/page_alloc.c:5290
> >  __alloc_pages+0x145/0x510 mm/page_alloc.c:5501
> >  alloc_pages+0x1aa/0x310 mm/mempolicy.c:2279
> >  relay_alloc_buf kernel/relay.c:124 [inline]
> >  relay_create_buf kernel/relay.c:165 [inline]
> >  relay_open_buf.part.0+0x2a7/0xc00 kernel/relay.c:387
> >  relay_open_buf kernel/relay.c:384 [inline]
> >  relay_open kernel/relay.c:520 [inline]
> >  relay_open+0x4fb/0xa00 kernel/relay.c:477
> >  do_blk_trace_setup+0x4bc/0xb60 kernel/trace/blktrace.c:559
> >  __blk_trace_setup+0xca/0x180 kernel/trace/blktrace.c:599
> >  blk_trace_ioctl+0x13b/0x270 kernel/trace/blktrace.c:740
> >  blkdev_ioctl+0x181/0x800 block/ioctl.c:603
> >  vfs_ioctl fs/ioctl.c:51 [inline]
> >  __do_sys_ioctl fs/ioctl.c:870 [inline]
> >  __se_sys_ioctl fs/ioctl.c:856 [inline]
> >  __x64_sys_ioctl+0x193/0x200 fs/ioctl.c:856
> >  do_syscall_x64 arch/x86/entry/common.c:50 [inline]
> >  do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
> >  entry_SYSCALL_64_after_hwframe+0x46/0xb0
> > RIP: 0033:0x7f2933089109
> > Code: Unable to access opcode bytes at RIP 0x7f29330890df.
> > RSP: 002b:00007f2934150168 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> > RAX: ffffffffffffffda RBX: 00007f293319bf60 RCX: 00007f2933089109
> > RDX: 0000000020000080 RSI: 00000000c0481273 RDI: 0000000000000003
> > RBP: 00007f29330e305d R08: 0000000000000000 R09: 0000000000000000
> > R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> > R13: 00007ffe5646271f R14: 00007f2934150300 R15: 0000000000022000
> >  </TASK>
> > BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274
> > in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 10461, name: syz-executor.5
> > preempt_count: 2, expected: 0
> > RCU nest depth: 0, expected: 0
> > 2 locks held by syz-executor.5/10461:
> >  #0: ffff888146a4f718 (&q->debugfs_mutex){+.+.}-{3:3}, at: blk_trace_ioctl+0xa9/0x270 kernel/trace/blktrace.c:735
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open kernel/relay.c:518 [inline]
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open+0x389/0xa00 kernel/relay.c:477
> > Preemption disabled at:
> > [<ffffffff81bc96e5>] rmqueue_pcplist mm/page_alloc.c:3813 [inline]
> > [<ffffffff81bc96e5>] rmqueue mm/page_alloc.c:3858 [inline]
> > [<ffffffff81bc96e5>] get_page_from_freelist+0x455/0x3a20 mm/page_alloc.c:4293
> > CPU: 0 PID: 10461 Comm: syz-executor.5 Tainted: G        W         5.19.0-rc2-next-20220615-syzkaller #0
> > Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
> > Call Trace:
> >  <TASK>
> >  __dump_stack lib/dump_stack.c:88 [inline]
> >  dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
> >  __might_resched.cold+0x222/0x26b kernel/sched/core.c:9823
> >  might_alloc include/linux/sched/mm.h:274 [inline]
> >  prepare_alloc_pages+0x3d8/0x570 mm/page_alloc.c:5290
> >  __alloc_pages+0x145/0x510 mm/page_alloc.c:5501
> >  alloc_pages+0x1aa/0x310 mm/mempolicy.c:2279
> >  relay_alloc_buf kernel/relay.c:124 [inline]
> >  relay_create_buf kernel/relay.c:165 [inline]
> >  relay_open_buf.part.0+0x2a7/0xc00 kernel/relay.c:387
> >  relay_open_buf kernel/relay.c:384 [inline]
> >  relay_open kernel/relay.c:520 [inline]
> >  relay_open+0x4fb/0xa00 kernel/relay.c:477
> >  do_blk_trace_setup+0x4bc/0xb60 kernel/trace/blktrace.c:559
> >  __blk_trace_setup+0xca/0x180 kernel/trace/blktrace.c:599
> >  blk_trace_ioctl+0x13b/0x270 kernel/trace/blktrace.c:740
> >  blkdev_ioctl+0x181/0x800 block/ioctl.c:603
> >  vfs_ioctl fs/ioctl.c:51 [inline]
> >  __do_sys_ioctl fs/ioctl.c:870 [inline]
> >  __se_sys_ioctl fs/ioctl.c:856 [inline]
> >  __x64_sys_ioctl+0x193/0x200 fs/ioctl.c:856
> >  do_syscall_x64 arch/x86/entry/common.c:50 [inline]
> >  do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
> >  entry_SYSCALL_64_after_hwframe+0x46/0xb0
> > RIP: 0033:0x7f2933089109
> > Code: Unable to access opcode bytes at RIP 0x7f29330890df.
> > RSP: 002b:00007f2934150168 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> > RAX: ffffffffffffffda RBX: 00007f293319bf60 RCX: 00007f2933089109
> > RDX: 0000000020000080 RSI: 00000000c0481273 RDI: 0000000000000003
> > RBP: 00007f29330e305d R08: 0000000000000000 R09: 0000000000000000
> > R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> > R13: 00007ffe5646271f R14: 00007f2934150300 R15: 0000000000022000
> >  </TASK>
> > BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274
> > in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 10461, name: syz-executor.5
> > preempt_count: 2, expected: 0
> > RCU nest depth: 0, expected: 0
> > 2 locks held by syz-executor.5/10461:
> >  #0: ffff888146a4f718 (&q->debugfs_mutex){+.+.}-{3:3}, at: blk_trace_ioctl+0xa9/0x270 kernel/trace/blktrace.c:735
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open kernel/relay.c:518 [inline]
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open+0x389/0xa00 kernel/relay.c:477
> > Preemption disabled at:
> > [<ffffffff81bc96e5>] rmqueue_pcplist mm/page_alloc.c:3813 [inline]
> > [<ffffffff81bc96e5>] rmqueue mm/page_alloc.c:3858 [inline]
> > [<ffffffff81bc96e5>] get_page_from_freelist+0x455/0x3a20 mm/page_alloc.c:4293
> > CPU: 0 PID: 10461 Comm: syz-executor.5 Tainted: G        W         5.19.0-rc2-next-20220615-syzkaller #0
> > Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
> > Call Trace:
> >  <TASK>
> >  __dump_stack lib/dump_stack.c:88 [inline]
> >  dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
> >  __might_resched.cold+0x222/0x26b kernel/sched/core.c:9823
> >  might_alloc include/linux/sched/mm.h:274 [inline]
> >  prepare_alloc_pages+0x3d8/0x570 mm/page_alloc.c:5290
> >  __alloc_pages+0x145/0x510 mm/page_alloc.c:5501
> >  alloc_pages+0x1aa/0x310 mm/mempolicy.c:2279
> >  relay_alloc_buf kernel/relay.c:124 [inline]
> >  relay_create_buf kernel/relay.c:165 [inline]
> >  relay_open_buf.part.0+0x2a7/0xc00 kernel/relay.c:387
> >  relay_open_buf kernel/relay.c:384 [inline]
> >  relay_open kernel/relay.c:520 [inline]
> >  relay_open+0x4fb/0xa00 kernel/relay.c:477
> >  do_blk_trace_setup+0x4bc/0xb60 kernel/trace/blktrace.c:559
> >  __blk_trace_setup+0xca/0x180 kernel/trace/blktrace.c:599
> >  blk_trace_ioctl+0x13b/0x270 kernel/trace/blktrace.c:740
> >  blkdev_ioctl+0x181/0x800 block/ioctl.c:603
> >  vfs_ioctl fs/ioctl.c:51 [inline]
> >  __do_sys_ioctl fs/ioctl.c:870 [inline]
> >  __se_sys_ioctl fs/ioctl.c:856 [inline]
> >  __x64_sys_ioctl+0x193/0x200 fs/ioctl.c:856
> >  do_syscall_x64 arch/x86/entry/common.c:50 [inline]
> >  do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
> >  entry_SYSCALL_64_after_hwframe+0x46/0xb0
> > RIP: 0033:0x7f2933089109
> > Code: Unable to access opcode bytes at RIP 0x7f29330890df.
> > RSP: 002b:00007f2934150168 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> > RAX: ffffffffffffffda RBX: 00007f293319bf60 RCX: 00007f2933089109
> > RDX: 0000000020000080 RSI: 00000000c0481273 RDI: 0000000000000003
> > RBP: 00007f29330e305d R08: 0000000000000000 R09: 0000000000000000
> > R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> > R13: 00007ffe5646271f R14: 00007f2934150300 R15: 0000000000022000
> >  </TASK>
> > BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274
> > in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 10461, name: syz-executor.5
> > preempt_count: 2, expected: 0
> > RCU nest depth: 0, expected: 0
> > 2 locks held by syz-executor.5/10461:
> >  #0: ffff888146a4f718 (&q->debugfs_mutex){+.+.}-{3:3}, at: blk_trace_ioctl+0xa9/0x270 kernel/trace/blktrace.c:735
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open kernel/relay.c:518 [inline]
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open+0x389/0xa00 kernel/relay.c:477
> > Preemption disabled at:
> > [<ffffffff81bc96e5>] rmqueue_pcplist mm/page_alloc.c:3813 [inline]
> > [<ffffffff81bc96e5>] rmqueue mm/page_alloc.c:3858 [inline]
> > [<ffffffff81bc96e5>] get_page_from_freelist+0x455/0x3a20 mm/page_alloc.c:4293
> > CPU: 0 PID: 10461 Comm: syz-executor.5 Tainted: G        W         5.19.0-rc2-next-20220615-syzkaller #0
> > Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
> > Call Trace:
> >  <TASK>
> >  __dump_stack lib/dump_stack.c:88 [inline]
> >  dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
> >  __might_resched.cold+0x222/0x26b kernel/sched/core.c:9823
> >  might_alloc include/linux/sched/mm.h:274 [inline]
> >  prepare_alloc_pages+0x3d8/0x570 mm/page_alloc.c:5290
> >  __alloc_pages+0x145/0x510 mm/page_alloc.c:5501
> >  alloc_pages+0x1aa/0x310 mm/mempolicy.c:2279
> >  relay_alloc_buf kernel/relay.c:124 [inline]
> >  relay_create_buf kernel/relay.c:165 [inline]
> >  relay_open_buf.part.0+0x2a7/0xc00 kernel/relay.c:387
> >  relay_open_buf kernel/relay.c:384 [inline]
> >  relay_open kernel/relay.c:520 [inline]
> >  relay_open+0x4fb/0xa00 kernel/relay.c:477
> >  do_blk_trace_setup+0x4bc/0xb60 kernel/trace/blktrace.c:559
> >  __blk_trace_setup+0xca/0x180 kernel/trace/blktrace.c:599
> >  blk_trace_ioctl+0x13b/0x270 kernel/trace/blktrace.c:740
> >  blkdev_ioctl+0x181/0x800 block/ioctl.c:603
> >  vfs_ioctl fs/ioctl.c:51 [inline]
> >  __do_sys_ioctl fs/ioctl.c:870 [inline]
> >  __se_sys_ioctl fs/ioctl.c:856 [inline]
> >  __x64_sys_ioctl+0x193/0x200 fs/ioctl.c:856
> >  do_syscall_x64 arch/x86/entry/common.c:50 [inline]
> >  do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
> >  entry_SYSCALL_64_after_hwframe+0x46/0xb0
> > RIP: 0033:0x7f2933089109
> > Code: Unable to access opcode bytes at RIP 0x7f29330890df.
> > RSP: 002b:00007f2934150168 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> > RAX: ffffffffffffffda RBX: 00007f293319bf60 RCX: 00007f2933089109
> > RDX: 0000000020000080 RSI: 00000000c0481273 RDI: 0000000000000003
> > RBP: 00007f29330e305d R08: 0000000000000000 R09: 0000000000000000
> > R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> > R13: 00007ffe5646271f R14: 00007f2934150300 R15: 0000000000022000
> >  </TASK>
> > BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274
> > in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 10461, name: syz-executor.5
> > preempt_count: 2, expected: 0
> > RCU nest depth: 0, expected: 0
> > 2 locks held by syz-executor.5/10461:
> >  #0: ffff888146a4f718 (&q->debugfs_mutex){+.+.}-{3:3}, at: blk_trace_ioctl+0xa9/0x270 kernel/trace/blktrace.c:735
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open kernel/relay.c:518 [inline]
> >  #1: ffffffff8bdee228 (relay_channels_mutex){+.+.}-{3:3}, at: relay_open+0x389/0xa00 kernel/relay.c:477
> > Preemption disabled at:
> > [<ffffffff81bc96e5>] rmqueue_pcplist mm/page_alloc.c:3813 [inline]
> > [<ffffffff81bc96e5>] rmqueue mm/page_alloc.c:3858 [inline]
> > [<ffffffff81bc96e5>] get_page_from_freelist+0x455/0x3a20 mm/page_alloc.c:4293
> > CPU: 0 PID: 10461 Comm: syz-executor.5 Tainted: G        W         5.19.0-rc2-next-20220615-syzkaller #0
> > Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
> > Call Trace:
> >  <TASK>
> >  __dump_stack lib/dump_stack.c:88 [inline]
> >  dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
> >  __might_resched.cold+0x222/0x26b kernel/sched/core.c:9823
> >  might_alloc include/linux/sched/mm.h:274 [inline]
> >  prepare_alloc_pages+0x3d8/0x570 mm/page_alloc.c:5290
> >  __alloc_pages+0x145/0x510 mm/page_alloc.c:5501
> >  alloc_pages+0x1aa/0x310 mm/mempolicy.c:2279
> >  __get_free_pages+0x8/0x40 mm/page_alloc.c:5561
> >  kasan_populate_vmalloc_pte mm/kasan/shadow.c:271 [inline]
> >  kasan_populate_vmalloc_pte+0x25/0x160 mm/kasan/shadow.c:262
> >  apply_to_pte_range mm/memory.c:2648 [inline]
> >  apply_to_pmd_range mm/memory.c:2692 [inline]
> >  apply_to_pud_range mm/memory.c:2728 [inline]
> >  apply_to_p4d_range mm/memory.c:2764 [inline]
> >  __apply_to_page_range+0x68c/0x1030 mm/memory.c:2798
> >  alloc_vmap_area+0xacf/0x1d30 mm/vmalloc.c:1625
> >  __get_vm_area_node+0x142/0x3f0 mm/vmalloc.c:2483
> >  get_vm_area_caller mm/vmalloc.c:2536 [inline]
> >  vmap+0x131/0x330 mm/vmalloc.c:2831
> >  relay_alloc_buf kernel/relay.c:129 [inline]
> >  relay_create_buf kernel/relay.c:165 [inline]
> >  relay_open_buf.part.0+0x4b2/0xc00 kernel/relay.c:387
> >  relay_open_buf kernel/relay.c:384 [inline]
> >  relay_open kernel/relay.c:520 [inline]
> >  relay_open+0x4fb/0xa00 kernel/relay.c:477
> >  do_blk_trace_setup+0x4bc/0xb60 kernel/trace/blktrace.c:559
> >  __blk_trace_setup+0xca/0x180 kernel/trace/blktrace.c:599
> >  blk_trace_ioctl+0x13b/0x270 kernel/trace/blktrace.c:740
> >  blkdev_ioctl+0x181/0x800 block/ioctl.c:603
> >  vfs_ioctl fs/ioctl.c:51 [inline]
> >  __do_sys_ioctl fs/ioctl.c:870 [inline]
> >  __se_sys_ioctl fs/ioctl.c:856 [inline]
> >  __x64_sys_ioctl+0x193/0x200 fs/ioctl.c:856
> >  do_syscall_x64 arch/x86/entry/common.c:50 [inline]
> >  do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
> >  entry_SYSCALL_64_after_hwframe+0x46/0xb0
> > RIP: 0033:0x7f2933089109
> > Code: Unable to access opcode bytes at RIP 0x7f29330890df.
> > RSP: 002b:00007f2934150168 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> > RAX: ffffffffffffffda RBX: 00007f293319bf60 RCX: 00007f2933089109
> > RDX: 0000000020000080 RSI: 00000000c0481273 RDI: 0000000000000003
> > RBP: 00007f29330e305d R08: 0000000000000000 R09: 0000000000000000
> > R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
> > R13: 00007ffe5646271f R14: 00007f2934150300 R15: 0000000000022000
> >  </TASK>
> > BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274
> > in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 10461, name: syz-executor.5
> >
> >
> > ---
> > 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 syzkaller@...glegroups.com.
> >
> > syzbot will keep track of this issue. See:
> > https://goo.gl/tpsmEJ#status for how to communicate with syzbot.
> ---end quoted text---
>
> --
> You received this message because you are subscribed to the Google Groups "syzkaller-bugs" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to syzkaller-bugs+unsubscribe@...glegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/syzkaller-bugs/YrAiNACivHyPXvSU%40infradead.org.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ