BUG: sleeping function called from invalid context at mm/slab.h:421 in_atomic(): 1, irqs_disabled(): 1, pid: 4589, name: syz-executor0 5 locks held by syz-executor0/4589: #0: (ptrval) (sb_writers#4){.+.+}, at: sb_start_write include/linux/fs.h:1550 [inline] #0: (ptrval) (sb_writers#4){.+.+}, at: mnt_want_write+0x3f/0xc0 fs/namespace.c:386 #1: (ptrval) (&type->i_mutex_dir_key/1){+.+.}, at: inode_lock_nested include/linux/fs.h:748 [inline] #1: (ptrval) (&type->i_mutex_dir_key/1){+.+.}, at: do_rmdir+0x37b/0x610 fs/namei.c:3899 #2: (ptrval) (sb_internal){.+.+}, at: sb_start_intwrite include/linux/fs.h:1597 [inline] #2: (ptrval) (sb_internal){.+.+}, at: ext4_evict_inode+0x720/0x1aa0 fs/ext4/inode.c:250 #3: (ptrval) (jbd2_handle){++++}, at: start_this_handle+0x581/0x1250 fs/jbd2/transaction.c:385 #4: (ptrval) (&ei->i_data_sem){++++}, at: ext4_truncate+0xe6d/0x1640 fs/ext4/inode.c:4458 irq event stamp: 870400 hardirqs last enabled at (870399): [] lookup_bh_lru fs/buffer.c:1271 [inline] hardirqs last enabled at (870399): [] __find_get_block+0x2b8/0xe50 fs/buffer.c:1283 hardirqs last disabled at (870400): [] interrupt_entry+0xb5/0xf0 arch/x86/entry/entry_64.S:625 softirqs last enabled at (870330): [] __do_softirq+0x778/0xaf5 kernel/softirq.c:311 softirqs last disabled at (870323): [] invoke_softirq kernel/softirq.c:365 [inline] softirqs last disabled at (870323): [] irq_exit+0x1d1/0x200 kernel/softirq.c:405 CPU: 0 PID: 4589 Comm: syz-executor0 Not tainted 4.17.0-rc2+ #24 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 ___might_sleep.cold.87+0x11f/0x13a kernel/sched/core.c:6188 __might_sleep+0x95/0x190 kernel/sched/core.c:6141 slab_pre_alloc_hook mm/slab.h:421 [inline] slab_alloc mm/slab.c:3378 [inline] __do_kmalloc mm/slab.c:3716 [inline] __kmalloc+0x2b9/0x760 mm/slab.c:3727 kmalloc_array include/linux/slab.h:631 [inline] kcalloc include/linux/slab.h:642 [inline] numa_crng_init drivers/char/random.c:798 [inline] crng_reseed+0x427/0x920 drivers/char/random.c:923 credit_entropy_bits+0x98d/0xa30 drivers/char/random.c:708 add_interrupt_randomness+0x494/0x860 drivers/char/random.c:1254 handle_irq_event_percpu+0xf9/0x1c0 kernel/irq/handle.c:191 handle_irq_event+0xa7/0x135 kernel/irq/handle.c:206 handle_edge_irq+0x20f/0x870 kernel/irq/chip.c:791 generic_handle_irq_desc include/linux/irqdesc.h:159 [inline] handle_irq+0x18c/0x2e7 arch/x86/kernel/irq_64.c:77 do_IRQ+0x78/0x190 arch/x86/kernel/irq.c:245 common_interrupt+0xf/0xf arch/x86/entry/entry_64.S:642 RIP: 0010:arch_local_irq_restore arch/x86/include/asm/paravirt.h:783 [inline] RIP: 0010:lock_is_held_type+0x18b/0x210 kernel/locking/lockdep.c:3960 RSP: 0018:ffff8801cfef6a20 EFLAGS: 00000286 ORIG_RAX: ffffffffffffffd9 RAX: dffffc0000000000 RBX: 0000000000000286 RCX: 0000000000000000 RDX: 1ffffffff11a315d RSI: ffffffff88d8e5e0 RDI: 0000000000000286 RBP: ffff8801cfef6a40 R08: ffffed003b5c46c3 R09: ffffed003b5c46c2 R10: ffffed003b5c46c2 R11: ffff8801dae23613 R12: ffff8801cff100c0 R13: 0000000000000000 R14: 0000000000000001 R15: 0000000000000000 lock_is_held include/linux/lockdep.h:344 [inline] rcu_read_lock_sched_held+0x108/0x120 kernel/rcu/update.c:117 trace_ext4_forget include/trace/events/ext4.h:1117 [inline] __ext4_forget+0x6ec/0x830 fs/ext4/ext4_jbd2.c:197 ext4_free_blocks+0x1d24/0x2ae0 fs/ext4/mballoc.c:4804 ext4_remove_blocks fs/ext4/extents.c:2555 [inline] ext4_ext_rm_leaf fs/ext4/extents.c:2711 [inline] ext4_ext_remove_space+0x27cc/0x4b60 fs/ext4/extents.c:2944 ext4_ext_truncate+0x1d1/0x220 fs/ext4/extents.c:4638 ext4_truncate+0xecd/0x1640 fs/ext4/inode.c:4463 ext4_evict_inode+0xb4b/0x1aa0 fs/ext4/inode.c:289 evict+0x4a6/0x960 fs/inode.c:557 iput_final fs/inode.c:1519 [inline] iput+0x62d/0xa80 fs/inode.c:1545 dentry_unlink_inode+0x49a/0x620 fs/dcache.c:376 d_delete+0x1d7/0x220 fs/dcache.c:2426 vfs_rmdir+0x38b/0x470 fs/namei.c:3863 do_rmdir+0x523/0x610 fs/namei.c:3911 __do_sys_rmdir fs/namei.c:3929 [inline] __se_sys_rmdir fs/namei.c:3927 [inline] __x64_sys_rmdir+0x36/0x40 fs/namei.c:3927 do_syscall_64+0x1b1/0x800 arch/x86/entry/common.c:287 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x4556e7 RSP: 002b:00007ffc2f1c5a68 EFLAGS: 00000202 ORIG_RAX: 0000000000000054 RAX: ffffffffffffffda RBX: 0000000000000065 RCX: 00000000004556e7 RDX: 0000000000000000 RSI: 00007ffc2f1c7810 RDI: 00007ffc2f1c7810 RBP: 00007ffc2f1c7810 R08: 0000000000000000 R09: 0000000000000001 R10: 000000000000000a R11: 0000000000000202 R12: 0000000000eff940 R13: 0000000000000000 R14: 00000000000001e5 R15: 000000000001e8a4 random: crng init done devpts: called with bogus options gfs2: path_lookup on ./file2 returned error -2 devpts: called with bogus options gfs2: path_lookup on ./file2 returned error -2 9pnet_virtio: no channels available for device ./file0 9pnet_virtio: no channels available for device ./file0 sock: process `syz-executor0' is using obsolete setsockopt SO_BSDCOMPAT NFS: bad mount option value specified: vY1 NFS: bad mount option value specified: vY1 IPVS: ftp: loaded support on port[0] = 21 tmpfs: No value for mount option ' L' tmpfs: No value for mount option ' L' libceph: parse_ips bad ip '::,ile' libceph: parse_ips bad ip '::,ile' IPVS: ftp: loaded support on port[0] = 21 proc: unrecognized mount option "5LĐ[fE講^91_х4Q|$>C w+8akCZ58Fƥ l` ڭ90 KqGzxr!YvPȂn%//]5_;iQxv 5U30׳ޜ3ѼY"2`jkcgIqtn_مkmhAf: FRz"NBO *ER@l0$+KaVy?0 du4 $RHVG!V ;M 5ׄk!#@|_H_'N>06 [ &{yR135 ݉kmů֎B=V츫g `0NH:?UsCt -2_T7vفe˼LTbԈl yJI:1^;䓣HhkBjatK_4+Tz414e proc: unrecognized mount option "5LĐ[fE講^91_х4Q|$>C w+8akCZ58Fƥ l` ڭ90 KqGzxr!YvPȂn%//]5_;iQxv 5U30׳ޜ3ѼY"2`jkcgIqtn_مkmhAf: FRz"NBO *ER@l0$+KaVy?0 du4 $RHVG!V ;M 5ׄk!#@|_H_'N>06 [ &{yR135 ݉kmů֎B=V츫g `0NH:?UsCt -2_T7vفe˼LTbԈl yJI:1^;䓣HhkBjatK_4+Tz414e proc: unrecognized mount option "./file0/" or missing value