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) r1 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r2 = ioctl$KVM_CREATE_VM(r1, 0xae01, 0x0) r3 = ioctl$KVM_CREATE_VCPU(r2, 0xae41, 0x0) ioctl$KVM_SET_MSRS(r3, 0x4008ae89, &(0x7f0000000280)={0x1, 0x0, [{0x6e0}]}) creat(&(0x7f0000000100)='./file1\x00', 0x4) io_setup(0x202, &(0x7f0000000200)=0x0) io_submit(r4, 0x3b, &(0x7f0000000540)=[&(0x7f00000000c0)={0x25, 0xe7030000, 0x0, 0x1, 0x0, r0, &(0x7f0000000000), 0x70000}]) [ 74.946047][ T4668] Bluetooth: hci0: command tx timeout [ 75.016635][ T5319] loop0: detected capacity change from 0 to 1024 [ 75.125979][ T5319] [ 75.127323][ T5319] ====================================================== [ 75.131050][ T5319] WARNING: possible circular locking dependency detected [ 75.134457][ T5319] 6.16.0-rc4-syzkaller #0 Not tainted [ 75.136925][ T5319] ------------------------------------------------------ [ 75.140180][ T5319] syz.0.0/5319 is trying to acquire lock: [ 75.142849][ T5319] ffff888053040108 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x1fc/0x1990 [ 75.148088][ T5319] [ 75.148088][ T5319] but task is already holding lock: [ 75.151488][ T5319] ffff8880361ce0b0 (&tree->tree_lock/1){+.+.}-{4:4}, at: hfsplus_find_init+0x15a/0x1d0 [ 75.155942][ T5319] [ 75.155942][ T5319] which lock already depends on the new lock. [ 75.155942][ T5319] [ 75.160685][ T5319] [ 75.160685][ T5319] the existing dependency chain (in reverse order) is: [ 75.164844][ T5319] [ 75.164844][ T5319] -> #1 (&tree->tree_lock/1){+.+.}-{4:4}: [ 75.168450][ T5319] lock_acquire+0x120/0x360 [ 75.170881][ T5319] __mutex_lock+0x182/0xe80 [ 75.173309][ T5319] hfsplus_find_init+0x15a/0x1d0 [ 75.175861][ T5319] hfsplus_file_truncate+0x383/0xb40 [ 75.178647][ T5319] hfsplus_setattr+0x1c4/0x270 [ 75.181077][ T5319] notify_change+0xb33/0xe40 [ 75.183440][ T5319] do_truncate+0x1a4/0x220 [ 75.185800][ T5319] path_openat+0x306c/0x3830 [ 75.188265][ T5319] do_filp_open+0x1fa/0x410 [ 75.190679][ T5319] do_sys_openat2+0x121/0x1c0 [ 75.193126][ T5319] __x64_sys_creat+0x8f/0xc0 [ 75.195453][ T5319] do_syscall_64+0xfa/0x3b0 [ 75.197751][ T5319] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 75.200777][ T5319] [ 75.200777][ T5319] -> #0 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}: [ 75.205032][ T5319] validate_chain+0xb9b/0x2140 [ 75.207513][ T5319] __lock_acquire+0xab9/0xd20 [ 75.209895][ T5319] lock_acquire+0x120/0x360 [ 75.212325][ T5319] __mutex_lock+0x182/0xe80 [ 75.214638][ T5319] hfsplus_file_extend+0x1fc/0x1990 [ 75.217298][ T5319] hfsplus_bmap_reserve+0x122/0x500 [ 75.219961][ T5319] __hfsplus_ext_write_extent+0x28d/0x5b0 [ 75.222953][ T5319] __hfsplus_ext_cache_extent+0x89/0xe30 [ 75.225604][ T5319] hfsplus_file_extend+0x444/0x1990 [ 75.228067][ T5319] hfsplus_get_block+0x411/0x1530 [ 75.230645][ T5319] __block_write_begin_int+0x6b2/0x1900 [ 75.233434][ T5319] cont_write_begin+0x789/0xb50 [ 75.235918][ T5319] hfsplus_write_begin+0x66/0xb0 [ 75.238482][ T5319] generic_perform_write+0x2c7/0x910 [ 75.241145][ T5319] generic_file_write_iter+0x10f/0x540 [ 75.243860][ T5319] aio_write+0x535/0x7a0 [ 75.246082][ T5319] io_submit_one+0x78b/0x1310 [ 75.248489][ T5319] __se_sys_io_submit+0x185/0x2f0 [ 75.251004][ T5319] do_syscall_64+0xfa/0x3b0 [ 75.253262][ T5319] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 75.256115][ T5319] [ 75.256115][ T5319] other info that might help us debug this: [ 75.256115][ T5319] [ 75.260514][ T5319] Possible unsafe locking scenario: [ 75.260514][ T5319] [ 75.263814][ T5319] CPU0 CPU1 [ 75.266178][ T5319] ---- ---- [ 75.268542][ T5319] lock(&tree->tree_lock/1); [ 75.270590][ T5319] lock(&HFSPLUS_I(inode)->extents_lock); [ 75.274239][ T5319] lock(&tree->tree_lock/1); [ 75.277524][ T5319] lock(&HFSPLUS_I(inode)->extents_lock); [ 75.280187][ T5319] [ 75.280187][ T5319] *** DEADLOCK *** [ 75.280187][ T5319] [ 75.283795][ T5319] 3 locks held by syz.0.0/5319: [ 75.285948][ T5319] #0: ffff888053042b78 (&sb->s_type->i_mutex_key#20){+.+.}-{4:4}, at: generic_file_write_iter+0xe3/0x540 [ 75.290584][ T5319] #1: ffff888053042988 (&hip->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x1fc/0x1990 [ 75.295074][ T5319] #2: ffff8880361ce0b0 (&tree->tree_lock/1){+.+.}-{4:4}, at: hfsplus_find_init+0x15a/0x1d0 [ 75.299525][ T5319] [ 75.299525][ T5319] stack backtrace: [ 75.302257][ T5319] CPU: 0 UID: 0 PID: 5319 Comm: syz.0.0 Not tainted 6.16.0-rc4-syzkaller #0 PREEMPT(full) [ 75.302274][ T5319] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 [ 75.302282][ T5319] Call Trace: [ 75.302290][ T5319] [ 75.302296][ T5319] dump_stack_lvl+0x189/0x250 [ 75.302321][ T5319] ? __pfx_dump_stack_lvl+0x10/0x10 [ 75.302340][ T5319] ? __pfx__printk+0x10/0x10 [ 75.302353][ T5319] ? print_lock_name+0xde/0x100 [ 75.302367][ T5319] print_circular_bug+0x2ee/0x310 [ 75.302381][ T5319] check_noncircular+0x134/0x160 [ 75.302396][ T5319] validate_chain+0xb9b/0x2140 [ 75.302407][ T5319] ? rcu_is_watching+0x15/0xb0 [ 75.302422][ T5319] ? __kasan_check_byte+0x12/0x40 [ 75.302434][ T5319] ? rcu_is_watching+0x15/0xb0 [ 75.302450][ T5319] ? look_up_lock_class+0x74/0x170 [ 75.302467][ T5319] ? register_lock_class+0x51/0x320 [ 75.302483][ T5319] __lock_acquire+0xab9/0xd20 [ 75.302501][ T5319] ? hfsplus_file_extend+0x1fc/0x1990 [ 75.302517][ T5319] lock_acquire+0x120/0x360 [ 75.302532][ T5319] ? hfsplus_file_extend+0x1fc/0x1990 [ 75.302549][ T5319] __mutex_lock+0x182/0xe80 [ 75.302565][ T5319] ? hfsplus_file_extend+0x1fc/0x1990 [ 75.302579][ T5319] ? check_path+0x21/0x40 [ 75.302588][ T5319] ? check_noncircular+0xe0/0x160 [ 75.302599][ T5319] ? hfsplus_file_extend+0x1fc/0x1990 [ 75.302613][ T5319] ? __pfx___mutex_lock+0x10/0x10 [ 75.302633][ T5319] hfsplus_file_extend+0x1fc/0x1990 [ 75.302650][ T5319] ? __pfx_hfsplus_file_extend+0x10/0x10 [ 75.302669][ T5319] ? __mutex_trylock_common+0x153/0x260 [ 75.302681][ T5319] ? __pfx___mutex_trylock_common+0x10/0x10 [ 75.302694][ T5319] ? rcu_is_watching+0x15/0xb0 [ 75.302710][ T5319] ? trace_contention_end+0x39/0x120 [ 75.302722][ T5319] ? __mutex_lock+0x330/0xe80 [ 75.302737][ T5319] ? hfsplus_brec_find+0x191/0x500 [ 75.302749][ T5319] hfsplus_bmap_reserve+0x122/0x500 [ 75.302769][ T5319] __hfsplus_ext_write_extent+0x28d/0x5b0 [ 75.302785][ T5319] __hfsplus_ext_cache_extent+0x89/0xe30 [ 75.302802][ T5319] hfsplus_file_extend+0x444/0x1990 [ 75.302819][ T5319] ? __pfx_hfsplus_file_extend+0x10/0x10 [ 75.302835][ T5319] ? clean_bdev_aliases+0x5c9/0x6b0 [ 75.302852][ T5319] ? __pfx_clean_bdev_aliases+0x10/0x10 [ 75.302869][ T5319] hfsplus_get_block+0x411/0x1530 [ 75.302885][ T5319] ? __pfx_hfsplus_get_block+0x10/0x10 [ 75.302898][ T5319] ? do_raw_spin_unlock+0x4d/0x240 [ 75.302911][ T5319] ? _raw_spin_unlock+0x28/0x50 [ 75.302927][ T5319] __block_write_begin_int+0x6b2/0x1900 [ 75.302943][ T5319] ? folio_add_lru+0x1b2/0x3d0 [ 75.302958][ T5319] ? __pfx_hfsplus_get_block+0x10/0x10 [ 75.302971][ T5319] ? __pfx___block_write_begin_int+0x10/0x10 [ 75.302987][ T5319] cont_write_begin+0x789/0xb50 [ 75.303005][ T5319] ? __pfx_cont_write_begin+0x10/0x10 [ 75.303018][ T5319] ? __pfx___might_resched+0x10/0x10 [ 75.303036][ T5319] ? folio_unlock+0x101/0x160 [ 75.303049][ T5319] hfsplus_write_begin+0x66/0xb0 [ 75.303060][ T5319] ? __pfx_hfsplus_get_block+0x10/0x10 [ 75.303074][ T5319] generic_perform_write+0x2c7/0x910 [ 75.303092][ T5319] ? __pfx_generic_perform_write+0x10/0x10 [ 75.303107][ T5319] ? file_update_time+0x2da/0x490 [ 75.303123][ T5319] ? __generic_file_write_iter+0xf9/0x230 [ 75.303137][ T5319] ? generic_file_write_iter+0xfb/0x540 [ 75.303152][ T5319] generic_file_write_iter+0x10f/0x540 [ 75.303167][ T5319] ? aa_file_perm+0x11f/0xed0 [ 75.303182][ T5319] ? __pfx_generic_file_write_iter+0x10/0x10 [ 75.303202][ T5319] ? __lock_acquire+0xab9/0xd20 [ 75.303241][ T5319] ? aio_write+0x4c4/0x7a0 [ 75.303256][ T5319] aio_write+0x535/0x7a0 [ 75.303271][ T5319] ? __pfx_aio_write+0x10/0x10 [ 75.303287][ T5319] ? __might_fault+0xb0/0x130 [ 75.303303][ T5319] io_submit_one+0x78b/0x1310 [ 75.303321][ T5319] ? __pfx_io_submit_one+0x10/0x10 [ 75.303334][ T5319] ? __might_fault+0xb0/0x130 [ 75.303347][ T5319] ? __might_fault+0xb0/0x130 [ 75.303359][ T5319] __se_sys_io_submit+0x185/0x2f0 [ 75.303372][ T5319] ? __pfx___se_sys_io_submit+0x10/0x10 [ 75.303387][ T5319] ? do_syscall_64+0xbe/0x3b0 [ 75.303406][ T5319] do_syscall_64+0xfa/0x3b0 [ 75.303419][ T5319] ? lockdep_hardirqs_on+0x9c/0x150 [ 75.303434][ T5319] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 75.303445][ T5319] ? clear_bhb_loop+0x60/0xb0 [ 75.303456][ T5319] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 75.303467][ T5319] RIP: 0033:0x7fd10478e929 [ 75.303479][ T5319] Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 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 a8 ff ff ff f7 d8 64 89 01 48 [ 75.303488][ T5319] RSP: 002b:00007fd10563c038 EFLAGS: 00000246 ORIG_RAX: 00000000000000d1 [ 75.303501][ T5319] RAX: ffffffffffffffda RBX: 00007fd1049b5fa0 RCX: 00007fd10478e929 [ 75.303509][ T5319] RDX: 0000200000000540 RSI: 000000000000003b RDI: 00007fd1055f2000 [ 75.303516][ T5319] RBP: 00007fd104810b39 R08: 0000000000000000 R09: 0000000000000000 [ 75.303523][ T5319] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 [ 75.303530][ T5319] R13: 0000000000000000 R14: 00007fd1049b5fa0 R15: 00007ffdc5bad168 [ 75.303543][ T5319]