Warning: Permanently added '10.128.0.94' (ECDSA) to the list of known hosts. executing program syzkaller login: [ 39.450807] hfsplus: xattr searching failed [ 39.456205] hfsplus: xattr searching failed [ 39.460771] [ 39.462462] ============================================ [ 39.467877] WARNING: possible recursive locking detected [ 39.473295] 4.14.302-syzkaller #0 Not tainted [ 39.477758] -------------------------------------------- [ 39.483180] syz-executor237/7974 is trying to acquire lock: [ 39.488856] (&HFSPLUS_I(inode)->extents_lock){+.+.}, at: [] hfsplus_get_block+0x1f9/0x820 [ 39.498805] [ 39.498805] but task is already holding lock: [ 39.504856] (&HFSPLUS_I(inode)->extents_lock){+.+.}, at: [] hfsplus_file_extend+0x188/0xef0 [ 39.514979] [ 39.514979] other info that might help us debug this: [ 39.521619] Possible unsafe locking scenario: [ 39.521619] [ 39.527904] CPU0 [ 39.530454] ---- [ 39.533007] lock(&HFSPLUS_I(inode)->extents_lock); [ 39.538087] lock(&HFSPLUS_I(inode)->extents_lock); [ 39.543157] [ 39.543157] *** DEADLOCK *** [ 39.543157] [ 39.549181] May be due to missing lock nesting notation [ 39.549181] [ 39.556076] 4 locks held by syz-executor237/7974: [ 39.560970] #0: (sb_writers#10){.+.+}, at: [] vfs_writev+0x208/0x290 [ 39.569181] #1: (&sb->s_type->i_mutex_key#17){+.+.}, at: [] generic_file_write_iter+0x99/0x650 [ 39.579645] #2: (&HFSPLUS_I(inode)->extents_lock){+.+.}, at: [] hfsplus_file_extend+0x188/0xef0 [ 39.590190] #3: (&sbi->alloc_mutex){+.+.}, at: [] hfsplus_block_allocate+0xd2/0x910 [ 39.599691] [ 39.599691] stack backtrace: [ 39.604159] CPU: 0 PID: 7974 Comm: syz-executor237 Not tainted 4.14.302-syzkaller #0 [ 39.612030] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/26/2022 [ 39.621353] Call Trace: [ 39.623922] dump_stack+0x1b2/0x281 [ 39.627521] __lock_acquire.cold+0x180/0x97c [ 39.631900] ? register_lock_class+0x1d0/0x1180 [ 39.636540] ? trace_hardirqs_on+0x10/0x10 [ 39.640747] ? add_lock_to_list.constprop.0+0x17d/0x330 [ 39.646078] ? save_trace+0xd6/0x290 [ 39.649761] ? __lock_acquire+0x2190/0x3f20 [ 39.654056] lock_acquire+0x170/0x3f0 [ 39.657827] ? hfsplus_get_block+0x1f9/0x820 [ 39.662205] ? hfsplus_get_block+0x1f9/0x820 [ 39.666587] __mutex_lock+0xc4/0x1310 [ 39.670355] ? hfsplus_get_block+0x1f9/0x820 [ 39.674733] ? hfsplus_get_block+0x1f9/0x820 [ 39.679111] ? __ww_mutex_wakeup_for_backoff+0x210/0x210 [ 39.684532] ? lock_acquire+0x170/0x3f0 [ 39.688475] ? create_page_buffers+0x14d/0x1c0 [ 39.693043] hfsplus_get_block+0x1f9/0x820 [ 39.697261] ? _raw_spin_unlock+0x29/0x40 [ 39.701382] ? create_page_buffers+0xce/0x1c0 [ 39.705850] block_read_full_page+0x25e/0x8d0 [ 39.710322] ? hfsplus_file_extend+0xef0/0xef0 [ 39.714895] ? __lru_cache_add+0x178/0x250 [ 39.719101] ? __bread_gfp+0x2e0/0x2e0 [ 39.722962] ? add_to_page_cache_lru+0x136/0x2b0 [ 39.727778] ? add_to_page_cache_locked+0x40/0x40 [ 39.732604] ? alloc_pages_current+0x15d/0x260 [ 39.737161] do_read_cache_page+0x38e/0xc10 [ 39.741455] ? hfsplus_bmap+0x30/0x30 [ 39.745231] ? deref_stack_reg+0x124/0x1a0 [ 39.749442] hfsplus_block_allocate+0x189/0x910 [ 39.754100] hfsplus_file_extend+0x421/0xef0 [ 39.758485] ? hfsplus_free_fork+0x720/0x720 [ 39.762929] ? trace_hardirqs_on+0x10/0x10 [ 39.767139] ? kernel_text_address+0xbd/0xf0 [ 39.771527] ? __kernel_text_address+0x9/0x30 [ 39.776021] ? unwind_get_return_address+0x51/0x90 [ 39.780926] ? entry_SYSCALL_64_after_hwframe+0x5e/0xd3 [ 39.786267] hfsplus_get_block+0x15b/0x820 [ 39.790479] ? find_get_entry+0x312/0x630 [ 39.794601] ? create_page_buffers+0xce/0x1c0 [ 39.799068] __block_write_begin_int+0x35c/0x11d0 [ 39.803883] ? hfsplus_file_extend+0xef0/0xef0 [ 39.808440] ? __breadahead_gfp+0x150/0x150 [ 39.812737] ? wait_for_stable_page+0xe3/0x260 [ 39.817294] ? hfsplus_file_extend+0xef0/0xef0 [ 39.821849] block_write_begin+0x58/0x270 [ 39.825970] cont_write_begin+0x4a3/0x740 [ 39.830088] ? locked_inode_to_wb_and_lock_list+0x18e/0x7e0 [ 39.835774] ? block_write_begin+0x270/0x270 [ 39.840154] ? iov_iter_fault_in_readable+0x1b9/0x360 [ 39.845314] hfsplus_write_begin+0x87/0x130 [ 39.849606] ? hfsplus_file_extend+0xef0/0xef0 [ 39.854177] generic_perform_write+0x1d5/0x430 [ 39.858734] ? __mnt_drop_write_file+0x5f/0x90 [ 39.863294] ? filemap_page_mkwrite+0x2d0/0x2d0 [ 39.867962] ? current_time+0xb0/0xb0 [ 39.871738] ? lock_acquire+0x170/0x3f0 [ 39.875685] __generic_file_write_iter+0x227/0x590 [ 39.880584] generic_file_write_iter+0x36f/0x650 [ 39.885341] do_iter_readv_writev+0x4cf/0x5f0 [ 39.889819] ? clone_verify_area+0x1e0/0x1e0 [ 39.894211] ? rw_verify_area+0xe1/0x2a0 [ 39.898246] do_iter_write+0x152/0x550 [ 39.902127] ? rcu_lockdep_current_cpu_online+0xed/0x140 [ 39.908682] ? rcu_read_lock_sched_held+0x16c/0x1d0 [ 39.913673] vfs_writev+0x125/0x290 [ 39.917271] ? vfs_iter_write+0xa0/0xa0 [ 39.921215] ? debug_check_no_obj_freed+0x2c0/0x680 [ 39.926201] ? __fd_install+0x227/0x5c0 [ 39.930147] ? rcu_lockdep_current_cpu_online+0xed/0x140 [ 39.935568] ? putname+0xcd/0x110 [ 39.938992] ? rcu_read_lock_sched_held+0x16c/0x1d0 [ 39.943979] ? kmem_cache_free+0x23a/0x2b0 [ 39.948184] ? putname+0xcd/0x110 [ 39.951607] SyS_pwritev2+0x195/0x230 [ 39.955378] ? SyS_pwritev+0x200/0x200 [ 39.959236] ? do_syscall_64+0x4c/0x640 [ 39.963186] ? SyS_pwritev+0x200/0x200 [ 39.967043] do_syscall_64+0x1d5/0x640 [ 39.970907] entry_SYSCALL_64_after_hwframe+0x5e/0xd3 [ 39.976066] RIP: 0033:0x7f67b4f3d7e9 [ 39.979765] RSP: 002b:00007fff356920d8 EFLAGS: 00000246 ORIG_RAX: 0000000000000148 [ 39.987442] RAX: ffffffffffffffda RBX: 0032656c69662f2e RCX: 00007f67b4f3d7e9 [ 39.994683] RDX: 0000000000000001 RSI: 0000000020000100 RDI: 0000000000000004 [ 40.001