program: syz_mount_image$hfsplus(&(0x7f0000000080), &(0x7f0000000100)='./file1\x00', 0x0, &(0x7f0000000140)=ANY=[], 0x2, 0x63f, &(0x7f0000003300)="$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") r0 = creat(&(0x7f0000000000)='./file1\x00', 0x126) r1 = syz_open_dev$loop(&(0x7f0000000640), 0x0, 0x22400) ioctl$BLKROSET(r1, 0x125d, &(0x7f00000001c0)=0x4) io_setup(0x202, &(0x7f0000000200)=0x0) io_submit(r2, 0x3b, &(0x7f0000000540)=[&(0x7f00000000c0)={0x25, 0xe7030003, 0x2, 0x1, 0x0, r0, &(0x7f0000000000), 0xfffffffe, 0x16}]) [ 74.665654][ T4647] Bluetooth: hci0: command tx timeout [ 74.811824][ T5316] loop0: detected capacity change from 0 to 1024 [ 74.922722][ T5316] hfsplus: can't free extent: start 2889, count 1 [ 74.964156][ T5316] [ 74.965328][ T5316] ============================================ [ 74.967989][ T5316] WARNING: possible recursive locking detected [ 74.970605][ T5316] syzkaller #0 Not tainted [ 74.972556][ T5316] -------------------------------------------- [ 74.975262][ T5316] syz.0.0/5316 is trying to acquire lock: [ 74.977894][ T5316] ffff88805237c740 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x21c/0x1df0 [ 74.982986][ T5316] [ 74.982986][ T5316] but task is already holding lock: [ 74.986306][ T5316] ffff888045bb2040 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x21c/0x1df0 [ 74.991238][ T5316] [ 74.991238][ T5316] other info that might help us debug this: [ 74.994458][ T5316] Possible unsafe locking scenario: [ 74.994458][ T5316] [ 74.997608][ T5316] CPU0 [ 74.999070][ T5316] ---- [ 75.000539][ T5316] lock(&HFSPLUS_I(inode)->extents_lock); [ 75.002904][ T5316] lock(&HFSPLUS_I(inode)->extents_lock); [ 75.005385][ T5316] [ 75.005385][ T5316] *** DEADLOCK *** [ 75.005385][ T5316] [ 75.008833][ T5316] May be due to missing lock nesting notation [ 75.008833][ T5316] [ 75.012484][ T5316] locks held by syz.0.0/5316: 3, last CPU#0: [ 75.015220][ T5316] #0: ffff888045bb21d8 (&sb->s_type->i_mutex_key#24){+.+.}-{4:4}, at: generic_file_write_iter+0x82/0x330 [ 75.020090][ T5316] #1: ffff888045bb2040 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x21c/0x1df0 [ 75.024995][ T5316] #2: ffff888012ae00a8 (&tree->tree_lock/1){+.+.}-{4:4}, at: hfsplus_find_init+0x179/0x2e0 [ 75.029238][ T5316] [ 75.029238][ T5316] stack backtrace: [ 75.031856][ T5316] CPU: 0 UID: 0 PID: 5316 Comm: syz.0.0 Not tainted syzkaller #0 PREEMPT(full) [ 75.035836][ T5316] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 75.040098][ T5316] Call Trace: [ 75.041456][ T5316] [ 75.042832][ T5316] dump_stack_lvl+0xe8/0x150 [ 75.044897][ T5316] print_deadlock_bug+0x27a/0x290 [ 75.047168][ T5316] __lock_acquire+0x25db/0x2de0 [ 75.049272][ T5316] ? __bfs+0x153/0x290 [ 75.051033][ T5316] ? __pfx_hlock_conflict+0x10/0x10 [ 75.053301][ T5316] ? check_path+0x21/0x40 [ 75.055163][ T5316] ? check_noncircular+0xdb/0x150 [ 75.057285][ T5316] lock_acquire+0x115/0x350 [ 75.059110][ T5316] ? hfsplus_file_extend+0x21c/0x1df0 [ 75.061247][ T5316] __mutex_lock+0x19d/0x1550 [ 75.063160][ T5316] ? hfsplus_file_extend+0x21c/0x1df0 [ 75.065245][ T5316] ? __bfs+0x153/0x290 [ 75.067095][ T5316] ? __pfx_hlock_conflict+0x10/0x10 [ 75.069364][ T5316] ? check_path+0x21/0x40 [ 75.071516][ T5316] ? hfsplus_file_extend+0x21c/0x1df0 [ 75.074099][ T5316] ? __pfx___mutex_lock+0x10/0x10 [ 75.076423][ T5316] ? _raw_spin_unlock_irqrestore+0x4c/0x80 [ 75.078961][ T5316] hfsplus_file_extend+0x21c/0x1df0 [ 75.081224][ T5316] ? __pfx_hfsplus_file_extend+0x10/0x10 [ 75.083554][ T5316] ? __pfx___mutex_trylock_common+0x10/0x10 [ 75.086177][ T5316] ? rcu_is_watching+0x16/0xb0 [ 75.088341][ T5316] ? trace_contention_end+0x3d/0x140 [ 75.090672][ T5316] ? __asan_memset+0x22/0x50 [ 75.092742][ T5316] ? hfsplus_brec_find+0x19a/0x510 [ 75.095030][ T5316] hfsplus_bmap_reserve+0x170/0x590 [ 75.097367][ T5316] __hfsplus_ext_write_extent+0x295/0x690 [ 75.099734][ T5316] __hfsplus_ext_cache_extent+0x81/0xbd0 [ 75.102096][ T5316] ? hfsplus_find_init+0x179/0x2e0 [ 75.104222][ T5316] hfsplus_file_extend+0x502/0x1df0 [ 75.106496][ T5316] ? __pfx_hfsplus_file_extend+0x10/0x10 [ 75.108868][ T5316] ? clean_bdev_aliases+0x62e/0x750 [ 75.111106][ T5316] ? __pfx_clean_bdev_aliases+0x10/0x10 [ 75.113575][ T5316] hfsplus_get_block+0x41f/0x1610 [ 75.115865][ T5316] ? __pfx_hfsplus_get_block+0x10/0x10 [ 75.118248][ T5316] ? do_raw_spin_unlock+0x4d/0x200 [ 75.120396][ T5316] ? _raw_spin_unlock+0x28/0x50 [ 75.122413][ T5316] ? create_empty_buffers+0x460/0x520 [ 75.124659][ T5316] __block_write_begin_int+0x6c2/0x1900 [ 75.127008][ T5316] ? __pfx_hfsplus_get_block+0x10/0x10 [ 75.129359][ T5316] ? __pfx___block_write_begin_int+0x10/0x10 [ 75.131843][ T5316] cont_write_begin+0x71b/0xac0 [ 75.133912][ T5316] ? lockdep_hardirqs_on+0x7b/0x110 [ 75.136172][ T5316] ? __pfx_cont_write_begin+0x10/0x10 [ 75.138496][ T5316] ? rcu_is_watching+0x16/0xb0 [ 75.140435][ T5316] hfsplus_write_begin+0x126/0x1e0 [ 75.142575][ T5316] ? __pfx_hfsplus_get_block+0x10/0x10 [ 75.144903][ T5316] generic_perform_write+0x2d5/0x8f0 [ 75.147387][ T5316] ? __pfx_generic_perform_write+0x10/0x10 [ 75.149867][ T5316] ? file_update_time_flags+0x1e0/0x440 [ 75.152272][ T5316] ? __generic_file_write_iter+0xf9/0x230 [ 75.154747][ T5316] ? generic_file_write_iter+0x9a/0x330 [ 75.157245][ T5316] generic_file_write_iter+0xae/0x330 [ 75.159759][ T5316] aio_write+0x5d0/0x870 [ 75.161666][ T5316] ? __pfx_aio_write+0x10/0x10 [ 75.163873][ T5316] io_submit_one+0x798/0x13d0 [ 75.165949][ T5316] ? lockdep_hardirqs_on+0x7b/0x110 [ 75.168285][ T5316] ? irqentry_exit+0x218/0x910 [ 75.170342][ T5316] ? __pfx_io_submit_one+0x10/0x10 [ 75.172569][ T5316] ? lock_acquire+0x115/0x350 [ 75.174643][ T5316] ? __might_fault+0xaf/0x130 [ 75.176897][ T5316] __se_sys_io_submit+0x195/0x340 [ 75.179155][ T5316] ? __pfx___se_sys_io_submit+0x10/0x10 [ 75.181454][ T5316] do_syscall_64+0x166/0x520 [ 75.183404][ T5316] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 75.185944][ T5316] ? clear_bhb_loop+0x70/0xc0 [ 75.187883][ T5316] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 75.190274][ T5316] RIP: 0033:0x7f0bdb79e159 [ 75.192106][ T5316] 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 [ 75.200219][ T5316] RSP: 002b:00007f0bdc61dfe8 EFLAGS: 00000246 ORIG_RAX: 00000000000000d1 [ 75.203842][ T5316] RAX: ffffffffffffffda RBX: 00007f0bdba25fa0 RCX: 00007f0bdb79e159 [ 75.206865][ T5316] RDX: 0000200000000540 RSI: 000000000000003b RDI: 00007f0bdc5d4000 [ 75.210037][ T5316] RBP: 00007f0bdb83506b R08: 0000000000000000 R09: 0000000000000000 [ 75.213880][ T5316] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 [ 75.217265][ T5316] R13: 00007f0bdba26038 R14: 00007f0bdba25fa0 R15: 00007fff818d4518 [ 75.220627][ T5316] [ 75.236291][ T44] Trying to write to read-only block-device loop0