Warning: Permanently added '10.128.1.177' (ED25519) to the list of known hosts. executing program [ 41.678696][ T3965] loop0: detected capacity change from 0 to 1024 [ 41.835789][ T3965] [ 41.836422][ T3965] ============================================ [ 41.838060][ T3965] WARNING: possible recursive locking detected [ 41.839526][ T3965] 5.15.156-syzkaller #0 Not tainted [ 41.840803][ T3965] -------------------------------------------- [ 41.842454][ T3965] syz-executor198/3965 is trying to acquire lock: [ 41.844229][ T3965] ffff0000c90f1548 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{3:3}, at: hfsplus_get_block+0x2c4/0x1194 [ 41.847332][ T3965] [ 41.847332][ T3965] but task is already holding lock: [ 41.849383][ T3965] ffff0000c90f2988 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{3:3}, at: hfsplus_file_truncate+0x254/0x9cc [ 41.852288][ T3965] [ 41.852288][ T3965] other info that might help us debug this: [ 41.854520][ T3965] Possible unsafe locking scenario: [ 41.854520][ T3965] [ 41.856547][ T3965] CPU0 [ 41.857462][ T3965] ---- [ 41.858380][ T3965] lock(&HFSPLUS_I(inode)->extents_lock); [ 41.859914][ T3965] lock(&HFSPLUS_I(inode)->extents_lock); [ 41.861536][ T3965] [ 41.861536][ T3965] *** DEADLOCK *** [ 41.861536][ T3965] [ 41.863695][ T3965] May be due to missing lock nesting notation [ 41.863695][ T3965] [ 41.865908][ T3965] 4 locks held by syz-executor198/3965: [ 41.867512][ T3965] #0: ffff0000c98bc460 (sb_writers#8){.+.+}-{0:0}, at: mnt_want_write+0x44/0x9c [ 41.869988][ T3965] #1: ffff0000c90f2b80 (&sb->s_type->i_mutex_key#17){+.+.}-{3:3}, at: do_truncate+0x1ac/0x28c [ 41.872672][ T3965] #2: ffff0000c90f2988 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{3:3}, at: hfsplus_file_truncate+0x254/0x9cc [ 41.875753][ T3965] #3: ffff0000c97de8f8 (&sbi->alloc_mutex){+.+.}-{3:3}, at: hfsplus_block_free+0xcc/0x514 [ 41.878448][ T3965] [ 41.878448][ T3965] stack backtrace: [ 41.880043][ T3965] CPU: 1 PID: 3965 Comm: syz-executor198 Not tainted 5.15.156-syzkaller #0 [ 41.882374][ T3965] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024 [ 41.885168][ T3965] Call trace: [ 41.886123][ T3965] dump_backtrace+0x0/0x530 [ 41.887283][ T3965] show_stack+0x2c/0x3c [ 41.888386][ T3965] dump_stack_lvl+0x108/0x170 [ 41.889660][ T3965] dump_stack+0x1c/0x58 [ 41.890759][ T3965] __lock_acquire+0x62bc/0x7638 [ 41.892015][ T3965] lock_acquire+0x240/0x77c [ 41.893230][ T3965] __mutex_lock_common+0x194/0x2154 [ 41.894632][ T3965] mutex_lock_nested+0xa4/0xf8 [ 41.895891][ T3965] hfsplus_get_block+0x2c4/0x1194 [ 41.897218][ T3965] block_read_full_page+0x2a0/0xc4c [ 41.898631][ T3965] hfsplus_readpage+0x28/0x38 [ 41.899872][ T3965] do_read_cache_page+0x60c/0x950 [ 41.901201][ T3965] read_cache_page+0x68/0x84 [ 41.902378][ T3965] hfsplus_block_free+0x120/0x514 [ 41.903732][ T3965] hfsplus_free_extents+0x148/0x8d4 [ 41.905091][ T3965] hfsplus_file_truncate+0x69c/0x9cc [ 41.906521][ T3965] hfsplus_setattr+0x18c/0x25c [ 41.907848][ T3965] notify_change+0xa34/0xcf8 [ 41.909096][ T3965] do_truncate+0x1c0/0x28c [ 41.910222][ T3965] vfs_truncate+0x2e0/0x388 [ 41.911426][ T3965] do_sys_truncate+0xec/0x1b4 [ 41.912608][ T3965] __arm64_sys_truncate+0x5c/0x70 [ 41.913903][ T3965] invoke_syscall+0x98/0x2b8 [ 41.915155][ T3965] el0_svc_common+0x138/0x258 [ 41.916443][ T3965] do_el0_svc+0x58/0x14c [ 41.917540][ T3965] el0_svc+0x7c/0x1f0 [ 41.918636][ T3965] el0t_64_sync_handler+0x84/0xe4 [ 41.920052][ T3965] el0t_64_sync+0x1a0/0x1a4 [ 41.921402][ T3965] hfsplus: request for non-existent node 16777216 in B*Tree [ 41.923394][ T3965] hfsplus: request for non-existent node 16777216 in B*Tree [ 41.925544][ T3965] hfsplus: unable to mark blocks free: error -5 [ 41.927082][ T3965] hfsplus: can't free extent