program: syz_mount_image$ext4(&(0x7f0000000240)='ext4\x00', &(0x7f0000000280)='mnt\x00', 0x4, &(0x7f0000000180)={[{@journal_dev={'journal_dev', 0x3d, 0x5}}]}, 0x0, 0x236, &(0x7f0000000300)="$eJzs3TFoM2UcBvDnLomf/b4gVRdBUEFEtFDqJrjURaEgpYgIKlREXJRWqC1urZOLg84qnVyKuFkdpUtxUQSnqh3qImhxsDjoELlcK9VGFFNz8t3vB5fcJe97//e4e95kOS5Aa00nmU/SSTKTpJekON/grnqZPt3cntpfTgaDx38shu3q7dpZv2tJtpI8mGSvLPJiN9nYffro54NH731jvXfPe7tPTU30IE8dHx0+dvLu4usfLjyw8fmX3y8WmU//D8d1+YoRn3WL5Jb/otj/RNFtegT8E0uvfvBVlftbk9w9zH8vZeqT9+baDXu93P/OX/V964cvbp/kWIHLNxj0qt/ArQHQOmWSfopyNkm9Xpazs/V/+K87V8uXVtdemXlhdX3l+aZnKuCy9JPDRz6+8tG1P+X/u06df+D6VeX/iaWdb6r1k07TowEmqcr/zLOb90X+oXXkH9pL/qG95B/aS/6hveQf2kv+ob3kH9pL/qG95B/a63z+AYB2GVxp+g5koClNzz8AAAAAAAAAAAAAAAAAAMBF21P7y2fLpGp++nZy/HCS7qj6neHziJMbh69XfyqqZr8r6m5jeebOMXcwpvcbvvv6pm+brf/ZHc3W31xJtl5LMtftXrz+itPr79+7+W++7z03ZoExPfRks/V/3Wm2/sJB8kk1/8yNmn/K3DZ8Hz3/9KvzN2b9l38ZcwcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMzG8BAAD//8n0bSk=") r0 = openat(0xffffffffffffff9c, &(0x7f0000000540)='mnt\x00', 0x0, 0x0) ioctl$FS_IOC_ADD_ENCRYPTION_KEY(r0, 0xc0506617, &(0x7f0000000580)={@id={0x2, 0x0, @a}, 0x40, 0x0, '\x00', @a}) mkdirat(0xffffffffffffff9c, &(0x7f0000000640)='mnt/encrypted_dir\x00', 0x0) r1 = openat(0xffffffffffffff9c, &(0x7f0000000680)='mnt/encrypted_dir\x00', 0x800, 0x0) ioctl$FS_IOC_SET_ENCRYPTION_POLICY(r1, 0x800c6613, &(0x7f00000006c0)=@v2={0x2, @aes256, 0x0, '\x00', @a}) chdir(&(0x7f00000002c0)='mnt/encrypted_dir\x00') symlink(&(0x7f0000000540)='./file0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\x00', &(0x7f0000000380)='./file0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\x00') ioctl$FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS(r0, 0xc0406619, &(0x7f0000000140)={@id={0x2, 0x0, @a}}) mount$bpf(0x0, &(0x7f0000000000)='./file0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\x00', 0x0, 0x90c00, 0x0) [ 79.319531][ T5330] loop0: detected capacity change from 0 to 128 [ 79.325966][ T5289] Bluetooth: hci0: command tx timeout [ 79.530795][ T5330] EXT4-fs (loop0): mounted filesystem 76b65be2-f6da-4727-8c75-0525a5b65a09 r/w without journal. Quota mode: none. [ 79.545939][ T5330] ext4 filesystem being mounted at /0/mnt supports timestamps until 2038-01-19 (0x7fffffff) [ 79.594888][ T5330] fscrypt: AES-256-CBC-CTS using implementation "cts-cbc-aes-aesni" [ 79.612646][ T5330] fscrypt: loop0: 1 inode(s) still busy after removing key with identifier 69b2f6edeee720cce0577937eb8a6751, including ino 12 [ 79.651480][ T75] [ 79.652523][ T75] ====================================================== [ 79.655308][ T75] WARNING: possible circular locking dependency detected [ 79.658158][ T75] syzkaller #0 Not tainted [ 79.659914][ T75] ------------------------------------------------------ [ 79.662690][ T75] kswapd0/75 is trying to acquire lock: [ 79.664989][ T75] ffff888000cf2090 (&type->lock_class){+.+.}-{4:4}, at: keyring_clear+0xaf/0x250 [ 79.668837][ T75] [ 79.668837][ T75] but task is already holding lock: [ 79.671795][ T75] ffffffff8ea87980 (fs_reclaim){+.+.}-{0:0}, at: kswapd+0x927/0x2de0 [ 79.675000][ T75] [ 79.675000][ T75] which lock already depends on the new lock. [ 79.675000][ T75] [ 79.679365][ T75] [ 79.679365][ T75] the existing dependency chain (in reverse order) is: [ 79.683032][ T75] [ 79.683032][ T75] -> #1 (fs_reclaim){+.+.}-{0:0}: [ 79.686214][ T75] fs_reclaim_acquire+0x71/0x100 [ 79.688625][ T75] __kmalloc_cache_noprof+0x40/0x660 [ 79.691104][ T75] assoc_array_insert+0x92/0x2f60 [ 79.693445][ T75] __key_link_begin+0xd6/0x1f0 [ 79.695759][ T75] __key_create_or_update+0x449/0xa80 [ 79.698373][ T75] key_create_or_update+0x42/0x60 [ 79.700796][ T75] x509_load_certificate_list+0x145/0x280 [ 79.703498][ T75] do_one_initcall+0x250/0x870 [ 79.705807][ T75] do_initcall_level+0x104/0x190 [ 79.708318][ T75] do_initcalls+0x59/0xa0 [ 79.710468][ T75] kernel_init_freeable+0x2a6/0x3e0 [ 79.713057][ T75] kernel_init+0x1d/0x1d0 [ 79.715222][ T75] ret_from_fork+0x514/0xb70 [ 79.717483][ T75] ret_from_fork_asm+0x1a/0x30 [ 79.719787][ T75] [ 79.719787][ T75] -> #0 (&type->lock_class){+.+.}-{4:4}: [ 79.723151][ T75] __lock_acquire+0x15a5/0x2cf0 [ 79.725517][ T75] lock_acquire+0x106/0x350 [ 79.727663][ T75] down_write+0x96/0x200 [ 79.729729][ T75] keyring_clear+0xaf/0x250 [ 79.731928][ T75] fscrypt_put_master_key+0xca/0x190 [ 79.734431][ T75] put_crypt_info+0x26d/0x310 [ 79.736551][ T75] fscrypt_put_encryption_info+0xf6/0x140 [ 79.739165][ T75] ext4_evict_inode+0xbe0/0x10e0 [ 79.741254][ T75] evict+0x61e/0xb10 [ 79.743164][ T75] __dentry_kill+0x1a2/0x690 [ 79.745325][ T75] shrink_kill+0xa9/0x2c0 [ 79.747210][ T75] shrink_dentry_list+0x2e0/0x5e0 [ 79.749461][ T75] prune_dcache_sb+0x119/0x180 [ 79.751809][ T75] super_cache_scan+0x369/0x4b0 [ 79.754058][ T75] do_shrink_slab+0x6fb/0x1150 [ 79.756368][ T75] shrink_slab+0x835/0x11f0 [ 79.758560][ T75] shrink_one+0x2d9/0x710 [ 79.760543][ T75] shrink_node+0x31bf/0x3ae0 [ 79.762703][ T75] kswapd+0x1736/0x2de0 [ 79.764732][ T75] kthread+0x389/0x470 [ 79.766694][ T75] ret_from_fork+0x514/0xb70 [ 79.768961][ T75] ret_from_fork_asm+0x1a/0x30 [ 79.771204][ T75] [ 79.771204][ T75] other info that might help us debug this: [ 79.771204][ T75] [ 79.775469][ T75] Possible unsafe locking scenario: [ 79.775469][ T75] [ 79.778722][ T75] CPU0 CPU1 [ 79.780988][ T75] ---- ---- [ 79.783307][ T75] lock(fs_reclaim); [ 79.785018][ T75] lock(&type->lock_class); [ 79.788060][ T75] lock(fs_reclaim); [ 79.790885][ T75] lock(&type->lock_class); [ 79.792863][ T75] [ 79.792863][ T75] *** DEADLOCK *** [ 79.792863][ T75] [ 79.796318][ T75] 2 locks held by kswapd0/75: [ 79.798424][ T75] #0: ffffffff8ea87980 (fs_reclaim){+.+.}-{0:0}, at: kswapd+0x927/0x2de0 [ 79.802074][ T75] #1: ffff88801f17a0d8 (&type->s_umount_key#33){++++}-{4:4}, at: super_cache_scan+0x91/0x4b0 [ 79.806440][ T75] [ 79.806440][ T75] stack backtrace: [ 79.808935][ T75] CPU: 0 UID: 0 PID: 75 Comm: kswapd0 Not tainted syzkaller #0 PREEMPT(full) [ 79.808950][ T75] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 79.808958][ T75] Call Trace: [ 79.808965][ T75] [ 79.808970][ T75] dump_stack_lvl+0xe8/0x150 [ 79.808986][ T75] print_circular_bug+0x2e1/0x300 [ 79.809002][ T75] check_noncircular+0x12e/0x150 [ 79.809015][ T75] __lock_acquire+0x15a5/0x2cf0 [ 79.809031][ T75] ? check_noncircular+0xda/0x150 [ 79.809043][ T75] ? keyring_clear+0xaf/0x250 [ 79.809059][ T75] lock_acquire+0x106/0x350 [ 79.809069][ T75] ? keyring_clear+0xaf/0x250 [ 79.809086][ T75] down_write+0x96/0x200 [ 79.809099][ T75] ? keyring_clear+0xaf/0x250 [ 79.809112][ T75] ? __pfx_down_write+0x10/0x10 [ 79.809125][ T75] keyring_clear+0xaf/0x250 [ 79.809140][ T75] ? __pfx_keyring_clear+0x10/0x10 [ 79.809156][ T75] ? crypto_destroy_tfm+0x36/0x320 [ 79.809171][ T75] fscrypt_put_master_key+0xca/0x190 [ 79.809189][ T75] put_crypt_info+0x26d/0x310 [ 79.809201][ T75] fscrypt_put_encryption_info+0xf6/0x140 [ 79.809211][ T75] ext4_evict_inode+0xbe0/0x10e0 [ 79.809227][ T75] ? __pfx_inode_wait_for_writeback+0x10/0x10 [ 79.809241][ T75] ? do_raw_spin_lock+0x12b/0x2f0 [ 79.809255][ T75] ? __pfx_ext4_evict_inode+0x10/0x10 [ 79.809266][ T75] ? do_raw_spin_unlock+0x4d/0x210 [ 79.809278][ T75] ? __pfx_ext4_evict_inode+0x10/0x10 [ 79.809288][ T75] evict+0x61e/0xb10 [ 79.809302][ T75] ? __pfx_evict+0x10/0x10 [ 79.809313][ T75] ? _raw_spin_unlock+0x28/0x50 [ 79.809324][ T75] ? iput+0xb25/0xe80 [ 79.809334][ T75] __dentry_kill+0x1a2/0x690 [ 79.809346][ T75] ? shrink_kill+0x8d/0x2c0 [ 79.809355][ T75] shrink_kill+0xa9/0x2c0 [ 79.809364][ T75] shrink_dentry_list+0x2e0/0x5e0 [ 79.809375][ T75] prune_dcache_sb+0x119/0x180 [ 79.809384][ T75] ? __pfx_prune_dcache_sb+0x10/0x10 [ 79.809394][ T75] ? list_lru_count_one+0x27/0x2c0 [ 79.809407][ T75] ? list_lru_count_one+0x264/0x2c0 [ 79.809419][ T75] super_cache_scan+0x369/0x4b0 [ 79.809433][ T75] do_shrink_slab+0x6fb/0x1150 [ 79.809450][ T75] shrink_slab+0x835/0x11f0 [ 79.809462][ T75] ? shrink_slab+0x1ef/0x11f0 [ 79.809475][ T75] ? __pfx_shrink_slab+0x10/0x10 [ 79.809488][ T75] ? __pfx_try_to_shrink_lruvec+0x10/0x10 [ 79.809500][ T75] ? mlock_drain_local+0x79/0x480 [ 79.809512][ T75] ? shrink_node+0x2d92/0x3ae0 [ 79.809524][ T75] shrink_one+0x2d9/0x710 [ 79.809537][ T75] ? shrink_node+0x2d92/0x3ae0 [ 79.809549][ T75] shrink_node+0x31bf/0x3ae0 [ 79.809563][ T75] ? shrink_node+0x2d92/0x3ae0 [ 79.809578][ T75] ? __lock_acquire+0x6b5/0x2cf0 [ 79.809589][ T75] ? percpu_ref_put+0x19/0x180 [ 79.809604][ T75] ? percpu_ref_put+0x19/0x180 [ 79.809616][ T75] ? __pfx_shrink_node+0x10/0x10 [ 79.809628][ T75] ? percpu_ref_put+0x19/0x180 [ 79.809640][ T75] ? percpu_ref_put+0x19/0x180 [ 79.809654][ T75] ? mem_cgroup_iter+0x420/0x450 [ 79.809664][ T75] ? mem_cgroup_iter+0x3b/0x450 [ 79.809673][ T75] kswapd+0x1736/0x2de0 [ 79.809688][ T75] ? kswapd+0x927/0x2de0 [ 79.809699][ T75] ? __pfx_kswapd+0x10/0x10 [ 79.809711][ T75] ? __lock_acquire+0x6b5/0x2cf0 [ 79.809732][ T75] ? __mutex_unlock_slowpath+0x1be/0x6f0 [ 79.809747][ T75] ? __pfx___mutex_unlock_slowpath+0x10/0x10 [ 79.809760][ T75] ? __pfx_autoremove_wake_function+0x10/0x10 [ 79.809775][ T75] ? __kthread_parkme+0x7a/0x1f0 [ 79.809790][ T75] kthread+0x389/0x470 [ 79.809803][ T75] ? __pfx_kswapd+0x10/0x10 [ 79.809812][ T75] ? __pfx_kthread+0x10/0x10 [ 79.809826][ T75] ret_from_fork+0x514/0xb70 [ 79.809838][ T75] ? __pfx_ret_from_fork+0x10/0x10 [ 79.809849][ T75] ? __switch_to+0xc79/0x1410 [ 79.809865][ T75] ? __pfx_kthread+0x10/0x10 [ 79.809878][ T75] ret_from_fork_asm+0x1a/0x30 [ 79.809895][ T75]