program: syz_mount_image$hfsplus(&(0x7f0000000040), &(0x7f0000000080)='./file1\x00', 0x400, &(0x7f0000000140)=ANY=[], 0x1, 0x694, &(0x7f0000001100)="$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") r0 = creat(&(0x7f0000000000)='./bus\x00', 0x0) io_setup(0x202, &(0x7f0000000200)=0x0) io_submit(r1, 0x3b, &(0x7f0000000540)=[&(0x7f00000000c0)={0x25, 0xe7030000, 0x0, 0x1, 0x0, r0, &(0x7f0000000000), 0x70000}]) syz_mount_image$ext4(&(0x7f0000000040)='ext4\x00', &(0x7f0000000140)='./file1\x00', 0x30000c6, &(0x7f0000000080), 0x1, 0x553, &(0x7f0000001080)="$eJzs3d9rW1UcAPDvTdv91nUwhopIYQ9O5tK19ccEH+aj6HCg7zO0d2U0WUaTjrUO3B7ciy8yBBEH4ru++zj8B/wrBjoYMoo++BK56U2XrUmbddnSmc8Hbjkn9ybnfnPv9/TcnBsSwNCayP4UIl6OiG+SiIMRkeTrRiNfObG23er9q7PZkkSj8elfSXO7rN56rdbz9ueVlyLit68ijhc2tltbXlkolcvpYl6frFcuTdaWV05cqJTm0/n04vTMzKm3Z6bfe/edvsX6xtl/vv/k9oenvj66+t0vdw/dTOJ0HMjXtcfxBK61VyZiIn9PxuL0IxtO9aGxnSQZ9A6wLSN5no9F1gccjJE864H/vy8jogEMqUT+w5BqjQNa1/Z9ug5+btz7YO0CaGP8o2ufjcSe5rXRvtXkoSuj7Hp3vA/tZ238+uetm9kS/fscAmBL165HxMnR0Y39X5L3f9t3sodtHm1D/wfPzu1s/PNmp/FPYX38Ex3GP/s75O52bJ3/hbt9aKarbPz3fsfx7/qk1fhIXnuhOeYbS85fKKdZ3/ZiRByLsd1ZfbP5nFOrdxrd1rWP/7Ila781Fsz34+7o7oefM1eql54k5nb3rke80nH8m6wf/6TD8c/ej7M9tnEkvfVat3Vbx/90NX6KeL3j8X8wo5VsPj852TwfJltnxUZ/3zjye7f2Bx1/dvz3bR7/eNI+X1t7/DZ+3PNv2m3dQ/FH7+f/ruSzZnlX/tiVUr2+OBWxK/l44+PTD57bqre2z+I/dnTz/q/T+b83Ij7vMf4bh39+taf4B3T85x7r+D9+4c5HX/zQrf3e+r+3mqVj+SO99H+97uCTvHcAAAAAAACw0xQi4kAkheJ6uVAoFtfu7zgc+wrlaq1+/Hx16eJcNL8rOx5jhdZM98G2+yGm8vthW/XpR+ozEXEoIr4d2dusF2er5blBBw8AAAAAAAAAAAAAAAAAAAA7xP4u3//P/DEy6L0Dnjo/+Q3Da8v878cvPQE7kv//MLzkPwwv+Q/DS/7D8JL/MLzkPwwv+Q/DS/4DAAAAAAAAAAAAAAAAAAAAAAAAAABAX509cyZbGqv3r85m9bnLy0sL1csn5tLaQrGyNFucrS5eKs5Xq/PltDhbrWz1euVq9dLUdCxdmayntfpkbXnlXKW6dLF+7kKlNJ+eS8eeSVQAAAAAAAAAAAAAAAAAAADwfKktryyUyuV0UUFhW4XRnbEbCn0uDLpnAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAH/gsAAP//6AY3sQ==") open(&(0x7f0000000200)='./file1\x00', 0x4401, 0xb5) fallocate(r0, 0x11, 0x7, 0x87ffffc) truncate(&(0x7f0000000900)='./file1\x00', 0xbf39) r2 = open(&(0x7f0000000240)='./file1\x00', 0x145142, 0x44) sendfile(r2, r2, 0x0, 0x800000009) [ 83.383565][ T4669] Bluetooth: hci0: command tx timeout [ 83.395098][ T1315] ieee802154 phy0 wpan0: encryption failed: -22 [ 83.398402][ T1315] ieee802154 phy1 wpan1: encryption failed: -22 [ 83.492820][ T5324] loop0: detected capacity change from 0 to 1024 [ 83.632047][ T5324] [ 83.633297][ T5324] ====================================================== [ 83.636874][ T5324] WARNING: possible circular locking dependency detected [ 83.640389][ T5324] syzkaller #0 Not tainted [ 83.642253][ T5324] ------------------------------------------------------ [ 83.645058][ T5324] syz.0.0/5324 is trying to acquire lock: [ 83.647511][ T5324] ffff888037c380b0 (&tree->tree_lock/1){+.+.}-{4:4}, at: hfsplus_find_init+0x168/0x2d0 [ 83.651915][ T5324] [ 83.651915][ T5324] but task is already holding lock: [ 83.655454][ T5324] ffff888042de1c08 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_truncate+0x2b3/0xc30 [ 83.661471][ T5324] [ 83.661471][ T5324] which lock already depends on the new lock. [ 83.661471][ T5324] [ 83.666227][ T5324] [ 83.666227][ T5324] the existing dependency chain (in reverse order) is: [ 83.670254][ T5324] [ 83.670254][ T5324] -> #1 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}: [ 83.675009][ T5324] __mutex_lock+0x19f/0x1300 [ 83.678242][ T5324] hfsplus_file_extend+0x215/0x1d70 [ 83.681259][ T5324] hfsplus_bmap_reserve+0x125/0x510 [ 83.684020][ T5324] __hfsplus_ext_write_extent+0x28d/0x5b0 [ 83.687211][ T5324] __hfsplus_ext_cache_extent+0x89/0xe30 [ 83.690889][ T5324] hfsplus_file_extend+0x4af/0x1d70 [ 83.695335][ T5324] hfsplus_get_block+0x42c/0x1670 [ 83.698341][ T5324] __block_write_begin_int+0x6c6/0x1910 [ 83.700783][ T5324] cont_write_begin+0x737/0xae0 [ 83.703166][ T5324] hfsplus_write_begin+0x66/0xb0 [ 83.705692][ T5324] generic_perform_write+0x2e2/0x8f0 [ 83.708273][ T5324] generic_file_write_iter+0x14a/0x680 [ 83.711043][ T5324] aio_write+0x5cd/0x870 [ 83.712972][ T5324] io_submit_one+0x7bb/0x14c0 [ 83.715625][ T5324] __se_sys_io_submit+0x195/0x340 [ 83.718899][ T5324] do_syscall_64+0x14d/0xf80 [ 83.722053][ T5324] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 83.725081][ T5324] [ 83.725081][ T5324] -> #0 (&tree->tree_lock/1){+.+.}-{4:4}: [ 83.728683][ T5324] __lock_acquire+0x15a5/0x2cf0 [ 83.731207][ T5324] lock_acquire+0xf0/0x2e0 [ 83.733485][ T5324] __mutex_lock+0x19f/0x1300 [ 83.736321][ T5324] hfsplus_find_init+0x168/0x2d0 [ 83.738946][ T5324] hfsplus_file_truncate+0x39b/0xc30 [ 83.742068][ T5324] hfsplus_setattr+0x1c4/0x270 [ 83.744608][ T5324] notify_change+0xc1a/0xf40 [ 83.746872][ T5324] do_truncate+0x1c2/0x250 [ 83.749300][ T5324] vfs_truncate+0x4b4/0x540 [ 83.751994][ T5324] do_sys_truncate+0xf3/0x1c0 [ 83.754665][ T5324] __x64_sys_truncate+0x5b/0x70 [ 83.757195][ T5324] do_syscall_64+0x14d/0xf80 [ 83.759843][ T5324] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 83.763304][ T5324] [ 83.763304][ T5324] other info that might help us debug this: [ 83.763304][ T5324] [ 83.767990][ T5324] Possible unsafe locking scenario: [ 83.767990][ T5324] [ 83.771353][ T5324] CPU0 CPU1 [ 83.773934][ T5324] ---- ---- [ 83.776628][ T5324] lock(&HFSPLUS_I(inode)->extents_lock); [ 83.779090][ T5324] lock(&tree->tree_lock/1); [ 83.782091][ T5324] lock(&HFSPLUS_I(inode)->extents_lock); [ 83.786303][ T5324] lock(&tree->tree_lock/1); [ 83.788605][ T5324] [ 83.788605][ T5324] *** DEADLOCK *** [ 83.788605][ T5324] [ 83.792710][ T5324] 3 locks held by syz.0.0/5324: [ 83.795337][ T5324] #0: ffff88803db42420 (sb_writers#12){.+.+}-{0:0}, at: mnt_want_write+0x41/0x90 [ 83.800238][ T5324] #1: ffff888042de1df8 (&sb->s_type->i_mutex_key#25){+.+.}-{4:4}, at: do_truncate+0x18f/0x250 [ 83.805292][ T5324] #2: ffff888042de1c08 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_truncate+0x2b3/0xc30 [ 83.810378][ T5324] [ 83.810378][ T5324] stack backtrace: [ 83.813468][ T5324] CPU: 0 UID: 0 PID: 5324 Comm: syz.0.0 Not tainted syzkaller #0 PREEMPT(full) [ 83.813494][ T5324] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 83.813504][ T5324] Call Trace: [ 83.813515][ T5324] [ 83.813524][ T5324] dump_stack_lvl+0xe8/0x150 [ 83.813555][ T5324] print_circular_bug+0x2e1/0x300 [ 83.813583][ T5324] check_noncircular+0x12e/0x150 [ 83.813606][ T5324] __lock_acquire+0x15a5/0x2cf0 [ 83.813626][ T5324] ? _raw_spin_unlock_irqrestore+0x4c/0x80 [ 83.813650][ T5324] ? kasan_save_track+0x4f/0x80 [ 83.813672][ T5324] ? kasan_save_track+0x3e/0x80 [ 83.813694][ T5324] ? __kasan_kmalloc+0x93/0xb0 [ 83.813708][ T5324] ? __kmalloc_noprof+0x35c/0x760 [ 83.813729][ T5324] ? hfsplus_find_init+0x8c/0x2d0 [ 83.813746][ T5324] ? hfsplus_file_truncate+0x39b/0xc30 [ 83.813767][ T5324] ? hfsplus_setattr+0x1c4/0x270 [ 83.813790][ T5324] lock_acquire+0xf0/0x2e0 [ 83.813807][ T5324] ? hfsplus_find_init+0x168/0x2d0 [ 83.813827][ T5324] __mutex_lock+0x19f/0x1300 [ 83.813857][ T5324] ? hfsplus_find_init+0x168/0x2d0 [ 83.813878][ T5324] ? hfsplus_find_init+0x168/0x2d0 [ 83.813896][ T5324] ? __pfx___mutex_lock+0x10/0x10 [ 83.813916][ T5324] ? rcu_is_watching+0x15/0xb0 [ 83.813938][ T5324] ? __kmalloc_noprof+0x37d/0x760 [ 83.813960][ T5324] ? hfsplus_find_init+0x8c/0x2d0 [ 83.813977][ T5324] ? __kmalloc_noprof+0x1b8/0x760 [ 83.813999][ T5324] hfsplus_find_init+0x168/0x2d0 [ 83.814018][ T5324] hfsplus_file_truncate+0x39b/0xc30 [ 83.814059][ T5324] ? __pfx___up_read+0x10/0x10 [ 83.814075][ T5324] ? __pfx_hfsplus_file_truncate+0x10/0x10 [ 83.814099][ T5324] ? unmap_mapping_range+0xe6/0x180 [ 83.814119][ T5324] ? __pfx_unmap_mapping_range+0x10/0x10 [ 83.814136][ T5324] ? setattr_prepare+0x232/0xb30 [ 83.814153][ T5324] ? truncate_setsize+0xcf/0xf0 [ 83.814173][ T5324] hfsplus_setattr+0x1c4/0x270 [ 83.814194][ T5324] ? __pfx_hfsplus_setattr+0x10/0x10 [ 83.814215][ T5324] notify_change+0xc1a/0xf40 [ 83.814232][ T5324] do_truncate+0x1c2/0x250 [ 83.814247][ T5324] ? __pfx_do_truncate+0x10/0x10 [ 83.814260][ T5324] ? apparmor_path_truncate+0x245/0x2e0 [ 83.814360][ T5324] vfs_truncate+0x4b4/0x540 [ 83.814376][ T5324] ? __pfx_vfs_truncate+0x10/0x10 [ 83.814391][ T5324] ? do_getname+0x151/0x250 [ 83.814408][ T5324] do_sys_truncate+0xf3/0x1c0 [ 83.814423][ T5324] ? __pfx_do_sys_truncate+0x10/0x10 [ 83.814441][ T5324] __x64_sys_truncate+0x5b/0x70 [ 83.814455][ T5324] do_syscall_64+0x14d/0xf80 [ 83.814477][ T5324] ? trace_irq_disable+0x3b/0x150 [ 83.814500][ T5324] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 83.814515][ T5324] ? clear_bhb_loop+0x40/0x90 [ 83.814531][ T5324] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 83.814547][ T5324] RIP: 0033:0x7f02f859c799 [ 83.814564][ T5324] Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 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 e8 ff ff ff f7 d8 64 89 01 48 [ 83.814576][ T5324] RSP: 002b:00007f02f93b9fe8 EFLAGS: 00000246 ORIG_RAX: 000000000000004c [ 83.814594][ T5324] RAX: ffffffffffffffda RBX: 00007f02f8815fa0 RCX: 00007f02f859c799 [ 83.814607][ T5324] RDX: 0000000000000000 RSI: 000000000000bf39 RDI: 0000200000000900 [ 83.814617][ T5324] RBP: 00007f02f8632c99 R08: 0000000000000000 R09: 0000000000000000 [ 83.814627][ T5324] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 [ 83.814637][ T5324] R13: 00007f02f8816038 R14: 00007f02f8815fa0 R15: 00007ffef4141be8 [ 83.814655][ T5324] [ 83.997529][ T25] audit: type=1800 audit(1773236123.878:2): pid=5324 uid=0 auid=4294967295 ses=4294967295 subj=unconfined op=collect_data cause=failed(directio) comm="syz.0.0" name="file1" dev="loop0" ino=20 res=0 errno=0