./strace-static-x86_64 -e \!wait4,clock_nanosleep,nanosleep -s 100 -x -f ./syz-executor3574053994 <...> Warning: Permanently added '10.128.10.0' (ED25519) to the list of known hosts. execve("./syz-executor3574053994", ["./syz-executor3574053994"], 0x7ffebb3d7f40 /* 10 vars */) = 0 brk(NULL) = 0x555586383000 brk(0x555586383d00) = 0x555586383d00 arch_prctl(ARCH_SET_FS, 0x555586383380) = 0 set_tid_address(0x555586383650) = 5071 set_robust_list(0x555586383660, 24) = 0 rseq(0x555586383ca0, 0x20, 0, 0x53053053) = 0 prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0 readlink("/proc/self/exe", "/root/syz-executor3574053994", 4096) = 28 getrandom("\x9a\x8d\xd7\x76\x13\x22\x37\x9e", 8, GRND_NONBLOCK) = 8 brk(NULL) = 0x555586383d00 brk(0x5555863a4d00) = 0x5555863a4d00 brk(0x5555863a5000) = 0x5555863a5000 mprotect(0x7fb6a142b000, 16384, PROT_READ) = 0 mmap(0x1ffff000, 4096, PROT_NONE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1ffff000 mmap(0x20000000, 16777216, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x20000000 mmap(0x21000000, 4096, PROT_NONE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x21000000 memfd_create("syzkaller", 0) = 3 mmap(NULL, 138412032, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fb698e00000 write(3, "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"..., 524288) = 524288 munmap(0x7fb698e00000, 138412032) = 0 openat(AT_FDCWD, "/dev/loop0", O_RDWR) = 4 ioctl(4, LOOP_SET_FD, 3) = 0 close(3) = 0 close(4) = 0 mkdir("./file1", 0777) = 0 mount("/dev/loop0", "./file1", "hfsplus", MS_NOATIME, "") = 0 openat(AT_FDCWD, "./file1", O_RDONLY|O_DIRECTORY) = 3 chdir("./file1") = 0 [ 57.795291][ T5071] loop0: detected capacity change from 0 to 1024 openat(AT_FDCWD, "/dev/loop0", O_RDWR) = -1 EBUSY (Device or resource busy) [ 57.869132][ T5071] [ 57.871477][ T5071] ============================================ [ 57.877619][ T5071] WARNING: possible recursive locking detected [ 57.883759][ T5071] 6.9.0-rc6-syzkaller-00227-g3d25a941ea50 #0 Not tainted [ 57.890775][ T5071] -------------------------------------------- [ 57.896907][ T5071] syz-executor357/5071 is trying to acquire lock: [ 57.903297][ T5071] ffff8880243a1548 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{3:3}, at: hfsplus_get_block+0x383/0x14f0 [ 57.914164][ T5071] [ 57.914164][ T5071] but task is already holding lock: [ 57.921627][ T5071] ffff8880243a2988 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{3:3}, at: hfsplus_file_truncate+0x2da/0xb50 [ 57.932755][ T5071] [ 57.932755][ T5071] other info that might help us debug this: [ 57.940886][ T5071] Possible unsafe locking scenario: [ 57.940886][ T5071] [ 57.948316][ T5071] CPU0 [ 57.951575][ T5071] ---- [ 57.954870][ T5071] lock(&HFSPLUS_I(inode)->extents_lock); [ 57.960690][ T5071] lock(&HFSPLUS_I(inode)->extents_lock); [ 57.966496][ T5071] [ 57.966496][ T5071] *** DEADLOCK *** [ 57.966496][ T5071] [ 57.974985][ T5071] May be due to missing lock nesting notation [ 57.974985][ T5071] [ 57.983335][ T5071] 4 locks held by syz-executor357/5071: [ 57.988889][ T5071] #0: ffff8880205ac420 (sb_writers#9){.+.+}-{0:0}, at: mnt_want_write+0x3f/0x90 [ 57.998120][ T5071] #1: ffff8880243a2b80 (&sb->s_type->i_mutex_key#14){+.+.}-{3:3}, at: do_truncate+0x20c/0x310 [ 58.008599][ T5071] #2: ffff8880243a2988 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{3:3}, at: hfsplus_file_truncate+0x2da/0xb50 [ 58.020169][ T5071] #3: ffff88802fcbd8f8 (&sbi->alloc_mutex){+.+.}-{3:3}, at: hfsplus_block_free+0xbb/0x4e0 [ 58.030167][ T5071] [ 58.030167][ T5071] stack backtrace: [ 58.036064][ T5071] CPU: 0 PID: 5071 Comm: syz-executor357 Not tainted 6.9.0-rc6-syzkaller-00227-g3d25a941ea50 #0 [ 58.046457][ T5071] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024 [ 58.056506][ T5071] Call Trace: [ 58.059776][ T5071] [ 58.062791][ T5071] dump_stack_lvl+0x241/0x360 [ 58.067482][ T5071] ? __pfx_dump_stack_lvl+0x10/0x10 [ 58.072688][ T5071] ? print_deadlock_bug+0x479/0x620 [ 58.077878][ T5071] ? _find_first_zero_bit+0xd4/0x100 [ 58.083174][ T5071] validate_chain+0x15c1/0x58e0 [ 58.088048][ T5071] ? __pfx_stack_trace_save+0x10/0x10 [ 58.093520][ T5071] ? check_noncircular+0x259/0x4a0 [ 58.098639][ T5071] ? __pfx_validate_chain+0x10/0x10 [ 58.103974][ T5071] ? __pfx_check_noncircular+0x10/0x10 [ 58.109474][ T5071] ? lockdep_unlock+0x16a/0x300 [ 58.114401][ T5071] ? __pfx_lockdep_unlock+0x10/0x10 [ 58.119685][ T5071] ? add_lock_to_list+0x1de/0x2e0 [ 58.124707][ T5071] ? look_up_lock_class+0x77/0x160 [ 58.129898][ T5071] ? register_lock_class+0x102/0x980 [ 58.135183][ T5071] ? validate_chain+0x15a2/0x58e0 [ 58.140213][ T5071] ? __pfx_stack_trace_consume_entry+0x10/0x10 [ 58.146369][ T5071] ? __pfx_register_lock_class+0x10/0x10 [ 58.152083][ T5071] ? mark_lock+0x9a/0x350 [ 58.156407][ T5071] __lock_acquire+0x1346/0x1fd0 [ 58.161258][ T5071] lock_acquire+0x1ed/0x550 [ 58.165740][ T5071] ? hfsplus_get_block+0x383/0x14f0 [ 58.170926][ T5071] ? __pfx_lock_acquire+0x10/0x10 [ 58.175931][ T5071] ? __pfx___might_resched+0x10/0x10 [ 58.181206][ T5071] ? do_read_cache_page+0x30/0x200 [ 58.186335][ T5071] ? __pfx_register_lock_class+0x10/0x10 [ 58.191949][ T5071] ? hfsplus_setattr+0x1ce/0x280 [ 58.196881][ T5071] ? do_truncate+0x220/0x310 [ 58.201456][ T5071] ? vfs_truncate+0x2e1/0x3b0 [ 58.206117][ T5071] __mutex_lock+0x136/0xd70 [ 58.210684][ T5071] ? hfsplus_get_block+0x383/0x14f0 [ 58.215899][ T5071] ? hfsplus_get_block+0x383/0x14f0 [ 58.221102][ T5071] ? __pfx___mutex_lock+0x10/0x10 [ 58.226159][ T5071] hfsplus_get_block+0x383/0x14f0 [ 58.231217][ T5071] ? __pfx_hfsplus_get_block+0x10/0x10 [ 58.236673][ T5071] ? _raw_spin_unlock+0x28/0x50 [ 58.241529][ T5071] ? create_empty_buffers+0x53e/0x740 [ 58.246888][ T5071] block_read_full_folio+0x42e/0xe10 [ 58.252160][ T5071] ? __pfx_hfsplus_get_block+0x10/0x10 [ 58.257621][ T5071] ? __pfx_block_read_full_folio+0x10/0x10 [ 58.263424][ T5071] ? __pfx_lru_add_fn+0x10/0x10 [ 58.268277][ T5071] ? folio_add_lru+0x4b3/0x9e0 [ 58.273032][ T5071] ? folio_add_lru+0x27b/0x9e0 [ 58.277871][ T5071] filemap_read_folio+0x1a0/0x790 [ 58.282893][ T5071] ? __pfx_hfsplus_read_folio+0x10/0x10 [ 58.288429][ T5071] ? __pfx_filemap_read_folio+0x10/0x10 [ 58.293957][ T5071] ? __filemap_get_folio+0x92d/0xbb0 [ 58.299244][ T5071] ? hfsplus_block_free+0xbb/0x4e0 [ 58.304428][ T5071] do_read_cache_folio+0x134/0x820 [ 58.309526][ T5071] ? __pfx_hfsplus_read_folio+0x10/0x10 [ 58.315144][ T5071] do_read_cache_page+0x30/0x200 [ 58.320071][ T5071] hfsplus_block_free+0x128/0x4e0 [ 58.325108][ T5071] ? __kmalloc+0x251/0x4a0 [ 58.329553][ T5071] hfsplus_free_extents+0x17a/0xae0 [ 58.334858][ T5071] hfsplus_file_truncate+0x7d0/0xb50 [ 58.340145][ T5071] ? __pfx_hfsplus_file_truncate+0x10/0x10 [ 58.345955][ T5071] ? unmap_mapping_range+0xf8/0x290 [ 58.351171][ T5071] ? __pfx_unmap_mapping_range+0x10/0x10 [ 58.356799][ T5071] ? setattr_prepare+0x1f5/0xb20 [ 58.361727][ T5071] ? truncate_setsize+0xcf/0xf0 [ 58.366570][ T5071] hfsplus_setattr+0x1ce/0x280 [ 58.371370][ T5071] ? __pfx_hfsplus_setattr+0x10/0x10 [ 58.376671][ T5071] notify_change+0xb9d/0xe70 [ 58.381422][ T5071] do_truncate+0x220/0x310 [ 58.385871][ T5071] ? __pfx_do_truncate+0x10/0x10 [ 58.390816][ T5071] ? bpf_lsm_path_truncate+0x9/0x10 [ 58.396016][ T5071] vfs_truncate+0x2e1/0x3b0 [ 58.400518][ T5071] do_sys_truncate+0xde/0x190 [ 58.405180][ T5071] ? __pfx_do_sys_truncate+0x10/0x10 [ 58.410452][ T5071] ? do_syscall_64+0x102/0x240 [ 58.415208][ T5071] do_syscall_64+0xf5/0x240 [ 58.419704][ T5071] ? clear_bhb_loop+0x35/0x90 [ 58.424366][ T5071] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 58.430272][ T5071] RIP: 0033:0x7fb6a13b85f9 [ 58.434671][ T5071] Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 61 17 00 00 90 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 b8 ff ff ff f7 d8 64 89 01 48 [ 58.454262][ T5071] RSP: 002b:00007ffc943cc788 EFLAGS: 00000246 ORIG_RAX: 000000000000004c [ 58.462667][ T5071] RAX: ffffffffffffffda RBX: 0031656c69662f2e RCX: 00007fb6a13b85f9 [ 58.470641][ T5071] RDX: 00007fb6a13b7691 RSI: 0008000000000000 RDI: 0000000020000080 [ 58.478602][ T5071] RBP: 00007fb6a142b610 R08: 000000000000068d R09: 0000000000000000 [ 58.486557][ T5071] R10: 00007ffc943cc650 R11: 0000000000000246 R12: 0000000000000001 [ 58.494527][ T5071] R13: 00007ffc943cc958 R14: 0000000000000001 R15: 0000000000000001 [ 58.502493][ T5071] [ 58.505762][ T5071] hfsplus: request for non-existent node 16777216 in B*Tree [ 58.513338][ T5071] hfsplus: request for non-existent node 16777216 in B*Tree truncate("./file1", 2251799813685248) = 0 exit_group(0) = ? +++ exited with 0 +++ [