program: syz_mount_image$hfsplus(&(0x7f0000000040), &(0x7f0000000080)='./file1\x00', 0x400, &(0x7f0000000140)=ANY=[], 0x1, 0x694, &(0x7f0000001100)="$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") prctl$PR_SET_PDEATHSIG(0x1, 0x23) r0 = creat(&(0x7f0000000100)='./file1\x00', 0x0) io_setup(0x202, &(0x7f0000000200)=0x0) io_submit(r1, 0x3b, &(0x7f0000000540)=[&(0x7f00000000c0)={0x25, 0xe7030000, 0x0, 0x1, 0x0, r0, &(0x7f0000000000), 0x70000}]) [ 74.567366][ T5321] Bluetooth: hci0: command tx timeout [ 74.635310][ T5341] loop0: detected capacity change from 0 to 1024 [ 74.722112][ T5341] [ 74.723204][ T5341] ============================================ [ 74.726033][ T5341] WARNING: possible recursive locking detected [ 74.728751][ T5341] syzkaller #0 Not tainted [ 74.730758][ T5341] -------------------------------------------- [ 74.733454][ T5341] syz.0.0/5341 is trying to acquire lock: [ 74.735778][ T5341] ffff8880428b8108 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x1f8/0x1c30 [ 74.740421][ T5341] [ 74.740421][ T5341] but task is already holding lock: [ 74.743445][ T5341] ffff8880428ba988 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x1f8/0x1c30 [ 74.748083][ T5341] [ 74.748083][ T5341] other info that might help us debug this: [ 74.751526][ T5341] Possible unsafe locking scenario: [ 74.751526][ T5341] [ 74.754804][ T5341] CPU0 [ 74.756459][ T5341] ---- [ 74.757881][ T5341] lock(&HFSPLUS_I(inode)->extents_lock); [ 74.760477][ T5341] lock(&HFSPLUS_I(inode)->extents_lock); [ 74.762935][ T5341] [ 74.762935][ T5341] *** DEADLOCK *** [ 74.762935][ T5341] [ 74.766575][ T5341] May be due to missing lock nesting notation [ 74.766575][ T5341] [ 74.770161][ T5341] 3 locks held by syz.0.0/5341: [ 74.772291][ T5341] #0: ffff8880428bab78 (&sb->s_type->i_mutex_key#24){+.+.}-{4:4}, at: generic_file_write_iter+0xeb/0x550 [ 74.777277][ T5341] #1: ffff8880428ba988 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x1f8/0x1c30 [ 74.782247][ T5341] #2: ffff88803758a0b0 (&tree->tree_lock/1){+.+.}-{4:4}, at: hfsplus_find_init+0x168/0x2d0 [ 74.786758][ T5341] [ 74.786758][ T5341] stack backtrace: [ 74.789321][ T5341] CPU: 0 UID: 0 PID: 5341 Comm: syz.0.0 Not tainted syzkaller #0 PREEMPT(full) [ 74.789337][ T5341] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 [ 74.789345][ T5341] Call Trace: [ 74.789352][ T5341] [ 74.789358][ T5341] dump_stack_lvl+0x189/0x250 [ 74.789379][ T5341] ? __pfx_dump_stack_lvl+0x10/0x10 [ 74.789394][ T5341] ? __pfx__printk+0x10/0x10 [ 74.789411][ T5341] ? print_lock_name+0xde/0x100 [ 74.789430][ T5341] print_deadlock_bug+0x279/0x290 [ 74.789445][ T5341] __lock_acquire+0x2540/0x2cf0 [ 74.789463][ T5341] ? hfsplus_file_extend+0x1f8/0x1c30 [ 74.789476][ T5341] lock_acquire+0x117/0x340 [ 74.789486][ T5341] ? hfsplus_file_extend+0x1f8/0x1c30 [ 74.789502][ T5341] __mutex_lock+0x187/0x1350 [ 74.789567][ T5341] ? hfsplus_file_extend+0x1f8/0x1c30 [ 74.789581][ T5341] ? __bfs+0x154/0x290 [ 74.789593][ T5341] ? __pfx_hlock_conflict+0x10/0x10 [ 74.789609][ T5341] ? hfsplus_file_extend+0x1f8/0x1c30 [ 74.789621][ T5341] ? check_noncircular+0xda/0x150 [ 74.789635][ T5341] ? __pfx___mutex_lock+0x10/0x10 [ 74.789646][ T5341] ? lockdep_unlock+0x89/0x120 [ 74.789658][ T5341] hfsplus_file_extend+0x1f8/0x1c30 [ 74.789673][ T5341] ? __pfx_hfsplus_file_extend+0x10/0x10 [ 74.789686][ T5341] ? __pfx___mutex_trylock_common+0x10/0x10 [ 74.789699][ T5341] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 74.789712][ T5341] ? rcu_is_watching+0x15/0xb0 [ 74.789726][ T5341] ? trace_contention_end+0x39/0x100 [ 74.789740][ T5341] ? __asan_memset+0x22/0x50 [ 74.789755][ T5341] ? hfsplus_brec_find+0x1a9/0x510 [ 74.789773][ T5341] hfsplus_bmap_reserve+0x125/0x510 [ 74.789791][ T5341] __hfsplus_ext_write_extent+0x28d/0x5b0 [ 74.789806][ T5341] __hfsplus_ext_cache_extent+0x89/0xe30 [ 74.789821][ T5341] hfsplus_file_extend+0x437/0x1c30 [ 74.789836][ T5341] ? __pfx_hfsplus_file_extend+0x10/0x10 [ 74.789849][ T5341] ? clean_bdev_aliases+0x5c9/0x6b0 [ 74.789867][ T5341] ? __pfx_clean_bdev_aliases+0x10/0x10 [ 74.789885][ T5341] hfsplus_get_block+0x40a/0x1600 [ 74.789906][ T5341] ? __pfx_hfsplus_get_block+0x10/0x10 [ 74.789919][ T5341] ? do_raw_spin_unlock+0x4d/0x240 [ 74.789934][ T5341] ? _raw_spin_unlock+0x28/0x50 [ 74.789952][ T5341] __block_write_begin_int+0x6b5/0x1900 [ 74.789967][ T5341] ? __pfx_workingset_update_node+0x10/0x10 [ 74.789982][ T5341] ? __pfx_hfsplus_get_block+0x10/0x10 [ 74.789995][ T5341] ? __pfx___block_write_begin_int+0x10/0x10 [ 74.790014][ T5341] cont_write_begin+0x78c/0xb50 [ 74.790033][ T5341] ? __pfx_cont_write_begin+0x10/0x10 [ 74.790049][ T5341] ? __pfx___might_resched+0x10/0x10 [ 74.790061][ T5341] ? folio_unlock+0x101/0x160 [ 74.790077][ T5341] hfsplus_write_begin+0x66/0xb0 [ 74.790088][ T5341] ? __pfx_hfsplus_get_block+0x10/0x10 [ 74.790101][ T5341] generic_perform_write+0x2c5/0x900 [ 74.790114][ T5341] ? __pfx_generic_perform_write+0x10/0x10 [ 74.790124][ T5341] ? file_update_time_flags+0x2cb/0x4e0 [ 74.790139][ T5341] ? __generic_file_write_iter+0xf9/0x230 [ 74.790148][ T5341] ? generic_file_write_iter+0x103/0x550 [ 74.790157][ T5341] generic_file_write_iter+0x117/0x550 [ 74.790167][ T5341] ? __pfx_generic_file_write_iter+0x10/0x10 [ 74.790178][ T5341] ? __lock_acquire+0x6b6/0x2cf0 [ 74.790196][ T5341] ? aio_write+0x4c4/0x7a0 [ 74.790210][ T5341] aio_write+0x535/0x7a0 [ 74.790226][ T5341] ? __pfx_aio_write+0x10/0x10 [ 74.790243][ T5341] ? __might_fault+0xb0/0x130 [ 74.790260][ T5341] io_submit_one+0x775/0x1430 [ 74.790278][ T5341] ? __pfx_io_submit_one+0x10/0x10 [ 74.790292][ T5341] ? __might_fault+0xb0/0x130 [ 74.790307][ T5341] ? __might_fault+0xb0/0x130 [ 74.790321][ T5341] __se_sys_io_submit+0x185/0x320 [ 74.790335][ T5341] ? __pfx___se_sys_io_submit+0x10/0x10 [ 74.790351][ T5341] ? do_syscall_64+0xbe/0xf80 [ 74.790363][ T5341] do_syscall_64+0xfa/0xf80 [ 74.790373][ T5341] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 74.790384][ T5341] ? clear_bhb_loop+0x60/0xb0 [ 74.790396][ T5341] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 74.790407][ T5341] RIP: 0033:0x7f1c7e78f7c9 [ 74.790418][ T5341] 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 [ 74.790428][ T5341] RSP: 002b:00007f1c7f64d038 EFLAGS: 00000246 ORIG_RAX: 00000000000000d1 [ 74.790442][ T5341] RAX: ffffffffffffffda RBX: 00007f1c7e9e5fa0 RCX: 00007f1c7e78f7c9 [ 74.790449][ T5341] RDX: 0000200000000540 RSI: 000000000000003b RDI: 00007f1c7f603000 [ 74.790457][ T5341] RBP: 00007f1c7e813f91 R08: 0000000000000000 R09: 0000000000000000 [ 74.790464][ T5341] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 [ 74.790469][ T5341] R13: 00007f1c7e9e6038 R14: 00007f1c7e9e5fa0 R15: 00007ffc11d3f2c8 [ 74.790478][ T5341]