============================= WARNING: suspicious RCU usage 4.15.0-rc8+ #1 Not tainted ----------------------------- ./include/linux/rcupdate.h:302 Illegal context switch in RCU read-side critical section! other info that might help us debug this: rcu_scheduler_active = 2, debug_locks = 1 1 lock held by syz-executor0/10112: #0: (rcu_read_lock){....}, at: [<00000000642a16c1>] map_get_next_key kernel/bpf/syscall.c:836 [inline] #0: (rcu_read_lock){....}, at: [<00000000642a16c1>] SYSC_bpf kernel/bpf/syscall.c:1881 [inline] #0: (rcu_read_lock){....}, at: [<00000000642a16c1>] SyS_bpf+0x1105/0x4860 kernel/bpf/syscall.c:1846 stack backtrace: CPU: 0 PID: 10112 Comm: syz-executor0 Not tainted 4.15.0-rc8+ #1 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+0x194/0x257 lib/dump_stack.c:53 lockdep_rcu_suspicious+0x123/0x170 kernel/locking/lockdep.c:4585 rcu_preempt_sleep_check include/linux/rcupdate.h:301 [inline] ___might_sleep+0x385/0x470 kernel/sched/core.c:6025 __might_sleep+0x95/0x190 kernel/sched/core.c:6013 slab_pre_alloc_hook mm/slab.h:419 [inline] slab_alloc mm/slab.c:3368 [inline] __do_kmalloc mm/slab.c:3706 [inline] __kmalloc+0x2c5/0x760 mm/slab.c:3717 kmalloc include/linux/slab.h:504 [inline] trie_get_next_key+0x517/0xf10 kernel/bpf/lpm_trie.c:626 map_get_next_key kernel/bpf/syscall.c:842 [inline] SYSC_bpf kernel/bpf/syscall.c:1881 [inline] SyS_bpf+0x11b4/0x4860 kernel/bpf/syscall.c:1846 do_syscall_64+0x273/0x920 arch/x86/entry/common.c:285 entry_SYSCALL64_slow_path+0x25/0x25 RIP: 0033:0x452ef9 RSP: 002b:00007f504b3d7c58 EFLAGS: 00000212 ORIG_RAX: 0000000000000141 RAX: ffffffffffffffda RBX: 000000000071bea0 RCX: 0000000000452ef9 RDX: 0000000000000018 RSI: 0000000020013fe8 RDI: 0000000000000004 RBP: 000000000000003e R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000212 R12: 00000000006ef670 R13: 00000000ffffffff R14: 00007f504b3d86d4 R15: 0000000000000000 BUG: sleeping function called from invalid context at mm/slab.h:419 in_atomic(): 1, irqs_disabled(): 0, pid: 10112, name: syz-executor0 1 lock held by syz-executor0/10112: #0: (rcu_read_lock){....}, at: [<00000000642a16c1>] map_get_next_key kernel/bpf/syscall.c:836 [inline] #0: (rcu_read_lock){....}, at: [<00000000642a16c1>] SYSC_bpf kernel/bpf/syscall.c:1881 [inline] #0: (rcu_read_lock){....}, at: [<00000000642a16c1>] SyS_bpf+0x1105/0x4860 kernel/bpf/syscall.c:1846 CPU: 0 PID: 10112 Comm: syz-executor0 Not tainted 4.15.0-rc8+ #1 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+0x194/0x257 lib/dump_stack.c:53 ___might_sleep+0x2b2/0x470 kernel/sched/core.c:6060 __might_sleep+0x95/0x190 kernel/sched/core.c:6013 slab_pre_alloc_hook mm/slab.h:419 [inline] slab_alloc mm/slab.c:3368 [inline] __do_kmalloc mm/slab.c:3706 [inline] __kmalloc+0x2c5/0x760 mm/slab.c:3717 kmalloc include/linux/slab.h:504 [inline] trie_get_next_key+0x517/0xf10 kernel/bpf/lpm_trie.c:626 map_get_next_key kernel/bpf/syscall.c:842 [inline] SYSC_bpf kernel/bpf/syscall.c:1881 [inline] SyS_bpf+0x11b4/0x4860 kernel/bpf/syscall.c:1846 do_syscall_64+0x273/0x920 arch/x86/entry/common.c:285 entry_SYSCALL64_slow_path+0x25/0x25 RIP: 0033:0x452ef9 RSP: 002b:00007f504b3d7c58 EFLAGS: 00000212 ORIG_RAX: 0000000000000141 RAX: ffffffffffffffda RBX: 000000000071bea0 RCX: 0000000000452ef9 RDX: 0000000000000018 RSI: 0000000020013fe8 RDI: 0000000000000004 RBP: 000000000000003e R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000212 R12: 00000000006ef670 R13: 00000000ffffffff R14: 00007f504b3d86d4 R15: 0000000000000000 NFS: bad mount option value specified: v2- NFS: bad mount option value specified: v2- syz-executor4[10428] is installing a program with bpf_probe_write_user helper that may corrupt user memory! syz-executor4[10432] is installing a program with bpf_probe_write_user helper that may corrupt user memory! can: request_module (can-proto-0) failed. can: request_module (can-proto-0) failed. overlayfs: unrecognized mount option "êE`-YES8šQÝ m8EXŠ VÏ[ogƒ‹µ´PòøæUS›™NCóÉà ŠÊû³cådÉwÐÿkÕ"ôðÎCˆÛDôV­5óGÜ×KE= •fšXNØKÀ±Kƒ¼Û{ “¨[#\" or missing value overlayfs: unrecognized mount option "êE`-YES8šQÝ m8EXŠ VÏ[ogƒ‹µ´PòøæUS›™NCóÉà ŠÊû³cådÉwÐÿkÕ"ôðÎCˆÛDôV­5óGÜ×KE= •fšXNØKÀ±Kƒ¼Û{ “¨[#\" or missing value BUG: sleeping function called from invalid context at mm/slab.h:419 in_atomic(): 1, irqs_disabled(): 0, pid: 11114, name: syz-executor5 1 lock held by syz-executor5/11114: #0: (rcu_read_lock){....}, at: [<00000000642a16c1>] map_get_next_key kernel/bpf/syscall.c:836 [inline] #0: (rcu_read_lock){....}, at: [<00000000642a16c1>] SYSC_bpf kernel/bpf/syscall.c:1881 [inline] #0: (rcu_read_lock){....}, at: [<00000000642a16c1>] SyS_bpf+0x1105/0x4860 kernel/bpf/syscall.c:1846 CPU: 1 PID: 11114 Comm: syz-executor5 Tainted: G W 4.15.0-rc8+ #1 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+0x194/0x257 lib/dump_stack.c:53 ___might_sleep+0x2b2/0x470 kernel/sched/core.c:6060 __might_sleep+0x95/0x190 kernel/sched/core.c:6013 slab_pre_alloc_hook mm/slab.h:419 [inline] slab_alloc mm/slab.c:3368 [inline] __do_kmalloc mm/slab.c:3706 [inline] __kmalloc+0x2c5/0x760 mm/slab.c:3717 kmalloc include/linux/slab.h:504 [inline] trie_get_next_key+0x517/0xf10 kernel/bpf/lpm_trie.c:626 map_get_next_key kernel/bpf/syscall.c:842 [inline] SYSC_bpf kernel/bpf/syscall.c:1881 [inline] SyS_bpf+0x11b4/0x4860 kernel/bpf/syscall.c:1846 entry_SYSCALL_64_fastpath+0x29/0xa0 RIP: 0033:0x452ef9 RSP: 002b:00007f65f30cdc58 EFLAGS: 00000212 ORIG_RAX: 0000000000000141 RAX: ffffffffffffffda RBX: 000000000071bea0 RCX: 0000000000452ef9 RDX: 0000000000000018 RSI: 0000000020006fe8 RDI: 0000000000000004 RBP: 000000000000003c R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000212 R12: 00000000006ef640 R13: 00000000ffffffff R14: 00007f65f30ce6d4 R15: 0000000000000000 9pnet_virtio: no channels available for device ./file0