program: r0 = socket$nl_generic(0x10, 0x3, 0x10) sendmsg$nl_generic(r0, &(0x7f0000000000)={0x0, 0x0, &(0x7f0000000180)={&(0x7f0000000140)={0x34, 0x40, 0x107, 0xfffffffe, 0x0, {0x1, 0x7c}, [@nested={0x4, 0x142}, @nested={0xc, 0x1, 0x0, 0x1, [@typed={0x6, 0x6, 0x0, 0x0, @str='\x80\n'}]}, @nested={0x10, 0x2, 0x0, 0x1, [@nested={0xc, 0x14, 0x0, 0x1, [@typed={0x8, 0xc, 0x0, 0x0, @ipv4=@remote}]}]}]}, 0x34}, 0x1, 0x0, 0x0, 0x48815}, 0xc000) syz_mount_image$ext4(&(0x7f0000000240)='ext4\x00', &(0x7f0000000280)='mnt\x00', 0x4, &(0x7f0000000040), 0x0, 0x258, &(0x7f0000000780)="$eJzs3UFoHFUYB/BvZneNSRaJehEEFUREAyHeBD3Ei0JAYpAgqBAR8aIkQkzwlnjqpYf23Jacegmlt6Y9llxCLy2FntI2h/RSaEMPDT20hy2TSUrabLqlu90pmd8Php3ZmTffG2b/b/YyvABKayAiRiKiEhGDEVGLiGTvAR/ly8DO5mLv6mREo/HjvWT7uHw7t9uuPyIWIuLLiFhJk/irGjG3/MvGg7XvPj06W/vk9PLPvV29yB2bG+vfb50aO3Ju9Iu5K9fujCUxEvWnrqvzkibfVZOId15FsddEUi26B7yI8f/OXs9y/25EfLyd/1qkkd+8YzNvrNTi85MHtT1+9+r73ewr0HmNRi17Bi40gNJJI6IeSToUEfl6mg4N5f/hb1T60r+nZ/4d/HN6duqPokcqoFPqEevfXug53/9M/m9X8vwDh1eW/4nxpZvZ+lal6N4A3ZTlf/C3+c/igPy/WUCfgE5Jn7u3Vf6Bw0v+obzkH8qrM/nv72ifgO7w/Ifykn845L4+eJf8Q3nJP5SX/EN57c0/AFAujZ6i30AGilL0+AMAAAAAAAAAAAAAAAAAAOy32Ls6ubt0q+alExGb30REtVn9ys4MZvlMhH33k+ywJ5K8WVt+/bDNE7TpTMFvX791q9j6lz/owEkmfnjppvNTEQv/R8Rwtbr/95e0mEGvtbdb7K/93maBNn31U7H1Hy0VW390LeJiNv4MNxt/0nhv+7P5+FPP7l+b9f952OYJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6JrHAQAA//+wa24f") r1 = openat(0xffffffffffffff9c, &(0x7f0000000540)='mnt\x00', 0x0, 0x0) ioctl$FS_IOC_ADD_ENCRYPTION_KEY(r1, 0xc0506617, &(0x7f0000000580)={@id={0x2, 0x0, @a}, 0x40, 0x0, '\x00', @a}) mkdirat(0xffffffffffffff9c, &(0x7f0000000640)='mnt/encrypted_dir\x00', 0x0) r2 = openat(0xffffffffffffff9c, &(0x7f0000000680)='mnt/encrypted_dir\x00', 0x800, 0x0) ioctl$FS_IOC_SET_ENCRYPTION_POLICY(r2, 0x800c6613, &(0x7f00000006c0)=@v2={0x2, @aes256, 0x0, '\x00', @a}) chdir(&(0x7f00000002c0)='mnt/encrypted_dir\x00') symlink(&(0x7f00000000c0)='mnt/encrypted_dir\x00', &(0x7f0000000100)='./file0\x00') ioctl$FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS(r2, 0xc0406619, &(0x7f0000000080)={@id={0x2, 0x0, @a}}) rename(&(0x7f0000000000)='mnt\x00', &(0x7f0000000140)='mnt/encrypted_dir\x00') socketpair$unix(0x1, 0x2, 0x0, &(0x7f0000000200)={0xffffffffffffffff, 0xffffffffffffffff}) sendmmsg$unix(r3, &(0x7f0000002d00)=[{{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x820}}, {{&(0x7f0000001580)=@file={0x1, './file0\x00'}, 0x6e, 0x0, 0x0, 0x0, 0x0, 0x40042}}], 0x2, 0x20000000) openat$autofs(0xffffffffffffff9c, &(0x7f00000001c0), 0x180, 0x0) [ 88.221366][ T4687] Bluetooth: hci0: command tx timeout [ 88.375092][ T5344] netlink: ct family unspecified [ 88.377337][ T5344] openvswitch: netlink: Flow actions may not be safe on all matching packets. [ 88.462178][ T5344] loop0: detected capacity change from 0 to 128 [ 88.544430][ T5344] EXT4-fs (loop0): mounted filesystem 76b65be2-f6da-4727-8c75-0525a5b65a09 r/w without journal. Quota mode: none. [ 88.595269][ T5344] ext4 filesystem being mounted at /0/mnt supports timestamps until 2038-01-19 (0x7fffffff) [ 88.646917][ T5344] fscrypt: AES-256-CBC-CTS using implementation "cts-cbc-aes-aesni" [ 88.689017][ T5344] fscrypt: loop0: 1 inode(s) still busy after removing key with identifier 69b2f6edeee720cce0577937eb8a6751, including ino 12 [ 88.743849][ T77] [ 88.745024][ T77] ====================================================== [ 88.748017][ T77] WARNING: possible circular locking dependency detected [ 88.750970][ T77] syzkaller #0 Not tainted [ 88.752991][ T77] ------------------------------------------------------ [ 88.756673][ T77] kswapd0/77 is trying to acquire lock: [ 88.759200][ T77] ffff88801261e098 (&type->lock_class){+.+.}-{4:4}, at: keyring_clear+0xaf/0x240 [ 88.763350][ T77] [ 88.763350][ T77] but task is already holding lock: [ 88.766528][ T77] ffffffff8e251780 (fs_reclaim){+.+.}-{0:0}, at: kswapd+0x92a/0x2820 [ 88.769884][ T77] [ 88.769884][ T77] which lock already depends on the new lock. [ 88.769884][ T77] [ 88.774276][ T77] [ 88.774276][ T77] the existing dependency chain (in reverse order) is: [ 88.778085][ T77] [ 88.778085][ T77] -> #1 (fs_reclaim){+.+.}-{0:0}: [ 88.781317][ T77] fs_reclaim_acquire+0x72/0x100 [ 88.783954][ T77] __kmalloc_cache_noprof+0x40/0x700 [ 88.786771][ T77] assoc_array_insert+0x92/0x2f90 [ 88.789309][ T77] __key_link_begin+0xd6/0x1f0 [ 88.792345][ T77] __key_create_or_update+0x41a/0xa30 [ 88.795452][ T77] key_create_or_update+0x42/0x60 [ 88.798134][ T77] x509_load_certificate_list+0x145/0x280 [ 88.800844][ T77] do_one_initcall+0x1fb/0x820 [ 88.803327][ T77] do_initcall_level+0x104/0x190 [ 88.805801][ T77] do_initcalls+0x59/0xa0 [ 88.808028][ T77] kernel_init_freeable+0x334/0x4b0 [ 88.810842][ T77] kernel_init+0x1d/0x1d0 [ 88.813401][ T77] ret_from_fork+0x599/0xb30 [ 88.815591][ T77] ret_from_fork_asm+0x1a/0x30 [ 88.817760][ T77] [ 88.817760][ T77] -> #0 (&type->lock_class){+.+.}-{4:4}: [ 88.820897][ T77] __lock_acquire+0x15a6/0x2cf0 [ 88.823157][ T77] lock_acquire+0x117/0x340 [ 88.825175][ T77] down_write+0x96/0x1f0 [ 88.827278][ T77] keyring_clear+0xaf/0x240 [ 88.829377][ T77] fscrypt_put_master_key+0xca/0x190 [ 88.831932][ T77] put_crypt_info+0x26d/0x310 [ 88.834064][ T77] fscrypt_put_encryption_info+0xf6/0x140 [ 88.836555][ T77] ext4_clear_inode+0x170/0x2f0 [ 88.838646][ T77] ext4_evict_inode+0x9f6/0xe60 [ 88.840751][ T77] evict+0x5f4/0xae0 [ 88.842814][ T77] __dentry_kill+0x209/0x660 [ 88.845318][ T77] shrink_kill+0xa9/0x2c0 [ 88.847526][ T77] shrink_dentry_list+0x2e0/0x5e0 [ 88.849834][ T77] prune_dcache_sb+0x10e/0x180 [ 88.851829][ T77] super_cache_scan+0x369/0x4b0 [ 88.853947][ T77] do_shrink_slab+0x6df/0x10d0 [ 88.855886][ T77] shrink_slab+0x7ef/0x10d0 [ 88.857750][ T77] shrink_one+0x2d9/0x720 [ 88.859722][ T77] shrink_node+0x2f7d/0x35b0 [ 88.861830][ T77] kswapd+0x145a/0x2820 [ 88.863830][ T77] kthread+0x711/0x8a0 [ 88.865755][ T77] ret_from_fork+0x599/0xb30 [ 88.867917][ T77] ret_from_fork_asm+0x1a/0x30 [ 88.870312][ T77] [ 88.870312][ T77] other info that might help us debug this: [ 88.870312][ T77] [ 88.874950][ T77] Possible unsafe locking scenario: [ 88.874950][ T77] [ 88.878103][ T77] CPU0 CPU1 [ 88.880045][ T77] ---- ---- [ 88.882222][ T77] lock(fs_reclaim); [ 88.883874][ T77] lock(&type->lock_class); [ 88.887340][ T77] lock(fs_reclaim); [ 88.890491][ T77] lock(&type->lock_class); [ 88.892541][ T77] [ 88.892541][ T77] *** DEADLOCK *** [ 88.892541][ T77] [ 88.896065][ T77] 2 locks held by kswapd0/77: [ 88.898060][ T77] #0: ffffffff8e251780 (fs_reclaim){+.+.}-{0:0}, at: kswapd+0x92a/0x2820 [ 88.901721][ T77] #1: ffff88804150a0e0 (&type->s_umount_key#32){++++}-{4:4}, at: super_cache_scan+0x91/0x4b0 [ 88.906362][ T77] [ 88.906362][ T77] stack backtrace: [ 88.908923][ T77] CPU: 0 UID: 0 PID: 77 Comm: kswapd0 Not tainted syzkaller #0 PREEMPT(full) [ 88.908940][ T77] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 [ 88.908947][ T77] Call Trace: [ 88.908955][ T77] [ 88.908961][ T77] dump_stack_lvl+0x189/0x250 [ 88.908979][ T77] ? __pfx_dump_stack_lvl+0x10/0x10 [ 88.908991][ T77] ? __pfx__printk+0x10/0x10 [ 88.909006][ T77] ? print_lock_name+0xde/0x100 [ 88.909022][ T77] print_circular_bug+0x2e2/0x300 [ 88.909038][ T77] check_noncircular+0x12e/0x150 [ 88.909051][ T77] __lock_acquire+0x15a6/0x2cf0 [ 88.909067][ T77] ? keyring_clear+0xaf/0x240 [ 88.909077][ T77] lock_acquire+0x117/0x340 [ 88.909087][ T77] ? keyring_clear+0xaf/0x240 [ 88.909097][ T77] down_write+0x96/0x1f0 [ 88.909112][ T77] ? keyring_clear+0xaf/0x240 [ 88.909121][ T77] ? __pfx_down_write+0x10/0x10 [ 88.909135][ T77] keyring_clear+0xaf/0x240 [ 88.909144][ T77] ? __pfx_keyring_clear+0x10/0x10 [ 88.909153][ T77] fscrypt_put_master_key+0xca/0x190 [ 88.909169][ T77] put_crypt_info+0x26d/0x310 [ 88.909179][ T77] fscrypt_put_encryption_info+0xf6/0x140 [ 88.909190][ T77] ext4_clear_inode+0x170/0x2f0 [ 88.909201][ T77] ext4_evict_inode+0x9f6/0xe60 [ 88.909211][ T77] ? inode_wait_for_writeback+0x14d/0x370 [ 88.909226][ T77] ? __pfx_inode_wait_for_writeback+0x10/0x10 [ 88.909239][ T77] ? __pfx_ext4_evict_inode+0x10/0x10 [ 88.909249][ T77] ? do_raw_spin_unlock+0x4d/0x240 [ 88.909261][ T77] ? __pfx_ext4_evict_inode+0x10/0x10 [ 88.909270][ T77] evict+0x5f4/0xae0 [ 88.909286][ T77] ? __pfx_evict+0x10/0x10 [ 88.909299][ T77] ? _raw_spin_unlock+0x28/0x50 [ 88.909310][ T77] ? iput+0xcc6/0x1030 [ 88.909322][ T77] __dentry_kill+0x209/0x660 [ 88.909338][ T77] ? shrink_kill+0x8d/0x2c0 [ 88.909348][ T77] shrink_kill+0xa9/0x2c0 [ 88.909360][ T77] shrink_dentry_list+0x2e0/0x5e0 [ 88.909372][ T77] prune_dcache_sb+0x10e/0x180 [ 88.909384][ T77] ? __pfx_prune_dcache_sb+0x10/0x10 [ 88.909395][ T77] ? list_lru_count_one+0x27/0x2c0 [ 88.909410][ T77] ? list_lru_count_one+0x264/0x2c0 [ 88.909425][ T77] super_cache_scan+0x369/0x4b0 [ 88.909447][ T77] do_shrink_slab+0x6df/0x10d0 [ 88.909459][ T77] shrink_slab+0x7ef/0x10d0 [ 88.909473][ T77] ? shrink_slab+0x1e8/0x10d0 [ 88.909483][ T77] ? __pfx_shrink_slab+0x10/0x10 [ 88.909501][ T77] shrink_one+0x2d9/0x720 [ 88.909526][ T77] ? shrink_node+0x2d3f/0x35b0 [ 88.909539][ T77] shrink_node+0x2f7d/0x35b0 [ 88.909554][ T77] ? shrink_node+0x2d3f/0x35b0 [ 88.909569][ T77] ? __lock_acquire+0x6b6/0x2cf0 [ 88.909582][ T77] ? percpu_ref_put+0x19/0x180 [ 88.909594][ T77] ? __pfx_shrink_node+0x10/0x10 [ 88.909608][ T77] ? percpu_ref_put+0x19/0x180 [ 88.909619][ T77] ? mem_cgroup_iter+0x420/0x460 [ 88.909635][ T77] ? mem_cgroup_iter+0x3b/0x460 [ 88.909647][ T77] kswapd+0x145a/0x2820 [ 88.909663][ T77] ? kswapd+0x92a/0x2820 [ 88.909676][ T77] ? __pfx_kswapd+0x10/0x10 [ 88.909688][ T77] ? do_raw_spin_lock+0x121/0x290 [ 88.909700][ T77] ? raw_spin_rq_lock_nested+0x2a/0x140 [ 88.909711][ T77] ? __pfx_do_raw_spin_lock+0x10/0x10 [ 88.909730][ T77] ? _raw_spin_unlock_irqrestore+0xad/0x110 [ 88.909745][ T77] ? _raw_spin_unlock+0x30/0x50 [ 88.909756][ T77] ? __pfx_autoremove_wake_function+0x10/0x10 [ 88.909773][ T77] ? __pfx_set_cpus_allowed_ptr+0x10/0x10 [ 88.909790][ T77] ? __kthread_parkme+0x7b/0x200 [ 88.909801][ T77] ? __kthread_parkme+0x1a1/0x200 [ 88.909812][ T77] kthread+0x711/0x8a0 [ 88.909830][ T77] ? __pfx_kswapd+0x10/0x10 [ 88.909839][ T77] ? __pfx_kthread+0x10/0x10 [ 88.909850][ T77] ? _raw_spin_unlock_irq+0x23/0x50 [ 88.909860][ T77] ? lockdep_hardirqs_on+0x98/0x140 [ 88.909872][ T77] ? __pfx_kthread+0x10/0x10 [ 88.909884][ T77] ret_from_fork+0x599/0xb30 [ 88.909899][ T77] ? __pfx_ret_from_fork+0x10/0x10 [ 88.909911][ T77] ? __pfx_kthread+0x10/0x10 [ 88.909923][ T77] ret_from_fork_asm+0x1a/0x30 [ 88.909938][ T77]