Re: [syzbot] BUG: sleeping function called from invalid context in relay_open_buf

From: Dmitry Vyukov
Date: Mon Jun 20 2022 - 04:50:34 EST


/\/\/\/\/\/\/\/\/\/\/\/\On Mon, 20 Jun 2022 at 09:31, Christoph
Hellwig <hch@xxxxxxxxxxxxx> 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@xxxxxxxxxxxxxxxxxxxxxxxxx
> >
> > 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@xxxxxxxxxxxxxxxx.
> >
> > 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@xxxxxxxxxxxxxxxx.
> To view this discussion on the web visit https://groups.google.com/d/msgid/syzkaller-bugs/YrAiNACivHyPXvSU%40infradead.org.