program: r0 = syz_init_net_socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$ieee802154(&(0x7f0000000080), r0) r2 = syz_init_net_socket$nl_generic(0x10, 0x3, 0x10) sendmsg$IEEE802154_ADD_IFACE(r2, &(0x7f00000002c0)={0x0, 0x0, &(0x7f0000000280)={&(0x7f0000000000)=ANY=[@ANYBLOB='(\x00\x00\x00', @ANYRES16=r1, @ANYBLOB="010000000000000000002100000005002000000000000c001f00706879300a"], 0x28}}, 0x0) syz_mount_image$hfsplus(&(0x7f0000000040), &(0x7f0000000080)='./file1\x00', 0x400, &(0x7f0000000140)=ANY=[], 0x1, 0x694, &(0x7f0000001100)="$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") request_key(&(0x7f0000000000)='rxrpc_s\x00', &(0x7f0000001ffb)={'syz', 0x3, 0x3}, &(0x7f0000001fee)='y\xa9rustV\x1eS=\xd4\x16\x95:\x11\x01\x00\x00', 0x0) r3 = creat(&(0x7f0000000000)='./file1\x00', 0x0) io_setup(0x202, &(0x7f0000000200)=0x0) io_submit(r4, 0x3b, &(0x7f0000000540)=[&(0x7f00000000c0)={0x25, 0xe7030000, 0x0, 0x1, 0x0, r3, &(0x7f0000000000), 0x70000}]) openat(r3, &(0x7f0000000100)='./file1\x00', 0x517002, 0x0) [ 84.841168][ T4670] Bluetooth: hci0: command tx timeout [ 84.916739][ T5326] loop0: detected capacity change from 0 to 1024 [ 85.007537][ T5326] [ 85.008580][ T5326] ============================================ [ 85.011167][ T5326] WARNING: possible recursive locking detected [ 85.013867][ T5326] 6.15.0-rc1-syzkaller-00246-g900241a5cc15 #0 Not tainted [ 85.016309][ T5326] -------------------------------------------- [ 85.018513][ T5326] syz.0.0/5326 is trying to acquire lock: [ 85.020581][ T5326] ffff888040910108 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x21d/0x1b70 [ 85.024590][ T5326] [ 85.024590][ T5326] but task is already holding lock: [ 85.027535][ T5326] ffff888040912988 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x21d/0x1b70 [ 85.031802][ T5326] [ 85.031802][ T5326] other info that might help us debug this: [ 85.035030][ T5326] Possible unsafe locking scenario: [ 85.035030][ T5326] [ 85.037841][ T5326] CPU0 [ 85.039126][ T5326] ---- [ 85.040559][ T5326] lock(&HFSPLUS_I(inode)->extents_lock); [ 85.042909][ T5326] lock(&HFSPLUS_I(inode)->extents_lock); [ 85.045415][ T5326] [ 85.045415][ T5326] *** DEADLOCK *** [ 85.045415][ T5326] [ 85.048723][ T5326] May be due to missing lock nesting notation [ 85.048723][ T5326] [ 85.052012][ T5326] 3 locks held by syz.0.0/5326: [ 85.054025][ T5326] #0: ffff888040912b78 (&sb->s_type->i_mutex_key#20){+.+.}-{4:4}, at: generic_file_write_iter+0xe2/0x5e0 [ 85.058519][ T5326] #1: ffff888040912988 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x21d/0x1b70 [ 85.063141][ T5326] #2: ffff888051ef20b0 (&tree->tree_lock/1){+.+.}-{4:4}, at: hfsplus_find_init+0x14f/0x1d0 [ 85.067047][ T5326] [ 85.067047][ T5326] stack backtrace: [ 85.069426][ T5326] CPU: 0 UID: 0 PID: 5326 Comm: syz.0.0 Not tainted 6.15.0-rc1-syzkaller-00246-g900241a5cc15 #0 PREEMPT(full) [ 85.069442][ T5326] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 [ 85.069450][ T5326] Call Trace: [ 85.069457][ T5326] [ 85.069463][ T5326] dump_stack_lvl+0x241/0x360 [ 85.069483][ T5326] ? __pfx_dump_stack_lvl+0x10/0x10 [ 85.069497][ T5326] ? __pfx__printk+0x10/0x10 [ 85.069511][ T5326] ? print_lock+0x171/0x1a0 [ 85.069524][ T5326] print_deadlock_bug+0x2be/0x2d0 [ 85.069538][ T5326] validate_chain+0x928/0x24e0 [ 85.069551][ T5326] ? check_path+0x21/0x40 [ 85.069562][ T5326] ? check_noncircular+0xee/0x160 [ 85.069576][ T5326] ? look_up_lock_class+0x7b/0x170 [ 85.069628][ T5326] ? register_lock_class+0x54/0x330 [ 85.069640][ T5326] __lock_acquire+0xad5/0xd80 [ 85.069653][ T5326] lock_acquire+0x116/0x2f0 [ 85.069663][ T5326] ? hfsplus_file_extend+0x21d/0x1b70 [ 85.069674][ T5326] __mutex_lock+0x1a5/0x10c0 [ 85.069688][ T5326] ? hfsplus_file_extend+0x21d/0x1b70 [ 85.069699][ T5326] ? check_path+0x21/0x40 [ 85.069711][ T5326] ? check_noncircular+0xee/0x160 [ 85.069725][ T5326] ? lockdep_unlock+0x8d/0x120 [ 85.069733][ T5326] ? hfsplus_file_extend+0x21d/0x1b70 [ 85.069743][ T5326] ? __pfx___mutex_lock+0x10/0x10 [ 85.069760][ T5326] hfsplus_file_extend+0x21d/0x1b70 [ 85.069772][ T5326] ? __pfx_hfsplus_file_extend+0x10/0x10 [ 85.069781][ T5326] ? __pfx___mutex_trylock_common+0x10/0x10 [ 85.069790][ T5326] ? rcu_is_watching+0x15/0xb0 [ 85.069798][ T5326] ? trace_contention_end+0x3c/0x120 [ 85.069806][ T5326] ? __mutex_lock+0x380/0x10c0 [ 85.069814][ T5326] ? hfsplus_brec_find+0x1a0/0x590 [ 85.069826][ T5326] hfsplus_bmap_reserve+0x105/0x4e0 [ 85.069840][ T5326] __hfsplus_ext_write_extent+0x2a4/0x5c0 [ 85.069851][ T5326] __hfsplus_ext_cache_extent+0x84/0xe10 [ 85.069864][ T5326] hfsplus_file_extend+0x48e/0x1b70 [ 85.069876][ T5326] ? __pfx_hfsplus_file_extend+0x10/0x10 [ 85.069888][ T5326] ? clean_bdev_aliases+0x6ff/0x8a0 [ 85.069900][ T5326] ? __pfx_clean_bdev_aliases+0x10/0x10 [ 85.069910][ T5326] hfsplus_get_block+0x408/0x14f0 [ 85.069922][ T5326] ? __pfx_hfsplus_get_block+0x10/0x10 [ 85.069933][ T5326] ? _raw_spin_unlock+0x28/0x50 [ 85.069943][ T5326] ? create_empty_buffers+0x471/0x530 [ 85.069953][ T5326] __block_write_begin_int+0x691/0x1930 [ 85.069966][ T5326] ? __pfx_hfsplus_get_block+0x10/0x10 [ 85.069976][ T5326] ? __pfx___block_write_begin_int+0x10/0x10 [ 85.069989][ T5326] cont_write_begin+0x781/0xb40 [ 85.070010][ T5326] ? __pfx_cont_write_begin+0x10/0x10 [ 85.070021][ T5326] ? __pfx___might_resched+0x10/0x10 [ 85.070035][ T5326] ? __mark_inode_dirty+0x3db/0xe90 [ 85.070047][ T5326] hfsplus_write_begin+0x68/0xb0 [ 85.070064][ T5326] ? __pfx_hfsplus_get_block+0x10/0x10 [ 85.070075][ T5326] generic_perform_write+0x329/0xa10 [ 85.070092][ T5326] ? __pfx_generic_perform_write+0x10/0x10 [ 85.070101][ T5326] ? file_update_time+0x2ab/0x450 [ 85.070109][ T5326] ? __generic_file_write_iter+0x102/0x230 [ 85.070119][ T5326] generic_file_write_iter+0x10e/0x5e0 [ 85.070130][ T5326] ? __pfx_generic_file_write_iter+0x10/0x10 [ 85.070140][ T5326] ? __pfx_aa_file_perm+0x10/0x10 [ 85.070158][ T5326] ? __lock_acquire+0xad5/0xd80 [ 85.070172][ T5326] ? aio_write+0x501/0x7d0 [ 85.070183][ T5326] aio_write+0x56d/0x7d0 [ 85.070193][ T5326] ? __pfx_aio_write+0x10/0x10 [ 85.070208][ T5326] io_submit_one+0x8a9/0x18b0 [ 85.070220][ T5326] ? __lock_acquire+0xad5/0xd80 [ 85.070231][ T5326] ? __pfx_io_submit_one+0x10/0x10 [ 85.070244][ T5326] ? __might_fault+0xaa/0x120 [ 85.070259][ T5326] __se_sys_io_submit+0x17a/0x2e0 [ 85.070274][ T5326] ? __pfx___se_sys_io_submit+0x10/0x10 [ 85.070289][ T5326] ? do_syscall_64+0xb6/0x230 [ 85.070302][ T5326] do_syscall_64+0xf3/0x230 [ 85.070314][ T5326] ? clear_bhb_loop+0x45/0xa0 [ 85.070325][ T5326] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 85.070335][ T5326] RIP: 0033:0x7f1fd958d169 [ 85.070346][ T5326] 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 [ 85.070355][ T5326] RSP: 002b:00007f1fda3e5038 EFLAGS: 00000246 ORIG_RAX: 00000000000000d1 [ 85.070367][ T5326] RAX: ffffffffffffffda RBX: 00007f1fd97a5fa0 RCX: 00007f1fd958d169 [ 85.070376][ T5326] RDX: 0000200000000540 RSI: 000000000000003b RDI: 00007f1fda39b000 [ 85.070384][ T5326] RBP: 00007f1fd960e990 R08: 0000000000000000 R09: 0000000000000000 [ 85.070391][ T5326] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 [ 85.070398][ T5326] R13: 0000000000000000 R14: 00007f1fd97a5fa0 R15: 00007ffcd3a6f8b8 [ 85.070409][ T5326]