program: syz_mount_image$hfsplus(&(0x7f0000000040), &(0x7f0000000080)='./file1\x00', 0x400, &(0x7f0000000140)=ANY=[], 0x1, 0x694, &(0x7f0000001100)="$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") timerfd_create(0x0, 0x0) r0 = syz_open_procfs(0x0, &(0x7f0000000040)='fdinfo/3\x00') pread64(r0, &(0x7f0000000080)=""/237, 0xed, 0x5) r1 = creat(&(0x7f0000000000)='./bus\x00', 0x0) r2 = openat(0xffffffffffffff9c, &(0x7f0000000040)='./file1\x00', 0x141042, 0x0) pwritev2(r2, &(0x7f00000001c0)=[{&(0x7f0000000080)="ff", 0xfdef}], 0x1, 0xe7b, 0x0, 0x0) ioctl$KVM_SET_CPUID2(r2, 0x4008ae90, &(0x7f0000000280)={0x4, 0x0, [{0x7, 0x8, 0x2, 0x3990, 0x8, 0x7, 0x1000}, {0x6, 0x6, 0x6, 0x8, 0x4, 0x8000, 0xf}, {0x1, 0x0, 0x2, 0x4, 0x2, 0xb, 0x200}, {0xc0000001, 0x79, 0x6, 0x8, 0x593, 0x9, 0x8}]}) r3 = bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000740)={0x18, 0x3, &(0x7f0000000080)=ANY=[@ANYBLOB="1800000000000000000000000c00000095"], &(0x7f0000000240)='GPL\x00'}, 0x94) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f00000000c0)={&(0x7f0000000180)='i2c_result\x00', r3}, 0x18) r4 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000000), 0x22202, 0x0) r5 = ioctl$KVM_CREATE_VM(r4, 0xae01, 0x0) r6 = ioctl$KVM_CREATE_VCPU(r5, 0xae41, 0x2) ioctl$KVM_RUN(r6, 0xae80, 0x0) r7 = landlock_create_ruleset(&(0x7f0000000040)={0x2, 0x3, 0x3}, 0x18, 0x0) ioctl$KVM_PRE_FAULT_MEMORY(r6, 0xc040aed5, &(0x7f0000000080)={0x26000, 0x103000}) landlock_restrict_self(r7, 0x9) r8 = bpf$BPF_PROG_RAW_TRACEPOINT_LOAD(0x5, &(0x7f0000000740)={0x18, 0x3, &(0x7f0000000080)=ANY=[], &(0x7f0000000240)='GPL\x00'}, 0x94) bpf$BPF_RAW_TRACEPOINT_OPEN(0x11, &(0x7f00000000c0)={&(0x7f0000000180)='i2c_result\x00', r8}, 0x18) r9 = syz_open_dev$I2C(&(0x7f0000000000), 0x1, 0x101182) ioctl$I2C_RDWR(r9, 0x707, &(0x7f0000000380)={&(0x7f0000000040)=[{0x1, 0x1001, 0x0, 0x0}], 0x1}) io_setup(0x202, &(0x7f0000000200)=0x0) io_submit(r10, 0x3b, &(0x7f0000000540)=[&(0x7f00000000c0)={0x25, 0xe7030000, 0x0, 0x1, 0x0, r1, &(0x7f0000000000), 0x70000}]) [ 84.258642][ T5303] Bluetooth: hci0: command tx timeout [ 84.419967][ T5328] loop0: detected capacity change from 0 to 1024 [ 84.542489][ T24] audit: type=1800 audit(1775412095.745:2): pid=5328 uid=0 auid=4294967295 ses=4294967295 subj=unconfined op=collect_data cause=failed comm="syz.0.0" name="file1" dev="loop0" ino=20 res=0 errno=0 [ 84.741675][ T5328] [ 84.742871][ T5328] ====================================================== [ 84.745712][ T5328] WARNING: possible circular locking dependency detected [ 84.748903][ T5328] syzkaller #0 Not tainted [ 84.750871][ T5328] ------------------------------------------------------ [ 84.754447][ T5328] syz.0.0/5328 is trying to acquire lock: [ 84.757689][ T5328] ffff88804392ce88 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x215/0x1d70 [ 84.762363][ T5328] [ 84.762363][ T5328] but task is already holding lock: [ 84.765501][ T5328] ffff88801f76c0b0 (&tree->tree_lock/1){+.+.}-{4:4}, at: hfsplus_find_init+0x168/0x2d0 [ 84.770864][ T5328] [ 84.770864][ T5328] which lock already depends on the new lock. [ 84.770864][ T5328] [ 84.775164][ T5328] [ 84.775164][ T5328] the existing dependency chain (in reverse order) is: [ 84.779365][ T5328] [ 84.779365][ T5328] -> #1 (&tree->tree_lock/1){+.+.}-{4:4}: [ 84.783577][ T5328] __mutex_lock+0x19f/0x1300 [ 84.786441][ T5328] hfsplus_find_init+0x168/0x2d0 [ 84.789030][ T5328] hfsplus_get_block+0x91e/0x1670 [ 84.791494][ T5328] block_read_full_folio+0x29f/0x830 [ 84.794057][ T5328] read_pages+0x373/0x5a0 [ 84.796211][ T5328] page_cache_ra_unbounded+0x79c/0xa50 [ 84.799684][ T5328] page_cache_ra_order+0xaf2/0xeb0 [ 84.803108][ T5328] filemap_get_pages+0x4c0/0x1f10 [ 84.805600][ T5328] filemap_read+0x447/0x1230 [ 84.808002][ T5328] __kernel_read+0x504/0x9b0 [ 84.810238][ T5328] integrity_kernel_read+0x89/0xd0 [ 84.812917][ T5328] ima_calc_file_hash+0x12c3/0x17f0 [ 84.815831][ T5328] ima_collect_measurement+0x48b/0x930 [ 84.819259][ T5328] process_measurement+0x12cd/0x1c80 [ 84.822054][ T5328] ima_file_check+0xe1/0x130 [ 84.824349][ T5328] security_file_post_open+0xb3/0x260 [ 84.827063][ T5328] path_openat+0x2e4d/0x3860 [ 84.829347][ T5328] do_file_open+0x23e/0x4a0 [ 84.831798][ T5328] do_sys_openat2+0x113/0x200 [ 84.834672][ T5328] __x64_sys_openat+0x138/0x170 [ 84.837530][ T5328] do_syscall_64+0x14d/0xf80 [ 84.839930][ T5328] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 84.842707][ T5328] [ 84.842707][ T5328] -> #0 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}: [ 84.846652][ T5328] __lock_acquire+0x15a5/0x2cf0 [ 84.849531][ T5328] lock_acquire+0xf0/0x2e0 [ 84.852440][ T5328] __mutex_lock+0x19f/0x1300 [ 84.855038][ T5328] hfsplus_file_extend+0x215/0x1d70 [ 84.857897][ T5328] hfsplus_bmap_reserve+0x125/0x510 [ 84.860622][ T5328] __hfsplus_ext_write_extent+0x28d/0x5b0 [ 84.863611][ T5328] __hfsplus_ext_cache_extent+0x89/0xe30 [ 84.866355][ T5328] hfsplus_file_extend+0x4af/0x1d70 [ 84.869072][ T5328] hfsplus_get_block+0x42c/0x1670 [ 84.871766][ T5328] __block_write_begin_int+0x6c6/0x1910 [ 84.874475][ T5328] cont_write_begin+0x737/0xae0 [ 84.877060][ T5328] hfsplus_write_begin+0x66/0xb0 [ 84.879467][ T5328] generic_perform_write+0x2e2/0x8f0 [ 84.882029][ T5328] generic_file_write_iter+0x14a/0x680 [ 84.884748][ T5328] aio_write+0x5cd/0x870 [ 84.887473][ T5328] io_submit_one+0x7bb/0x14c0 [ 84.890747][ T5328] __se_sys_io_submit+0x195/0x340 [ 84.893859][ T5328] do_syscall_64+0x14d/0xf80 [ 84.896310][ T5328] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 84.899474][ T5328] [ 84.899474][ T5328] other info that might help us debug this: [ 84.899474][ T5328] [ 84.904104][ T5328] Possible unsafe locking scenario: [ 84.904104][ T5328] [ 84.907698][ T5328] CPU0 CPU1 [ 84.910758][ T5328] ---- ---- [ 84.913634][ T5328] lock(&tree->tree_lock/1); [ 84.916103][ T5328] lock(&HFSPLUS_I(inode)->extents_lock); [ 84.919786][ T5328] lock(&tree->tree_lock/1); [ 84.923053][ T5328] lock(&HFSPLUS_I(inode)->extents_lock); [ 84.925533][ T5328] [ 84.925533][ T5328] *** DEADLOCK *** [ 84.925533][ T5328] [ 84.929327][ T5328] 3 locks held by syz.0.0/5328: [ 84.932802][ T5328] #0: ffff888042fd64b8 (&sb->s_type->i_mutex_key#25){+.+.}-{4:4}, at: generic_file_write_iter+0x11e/0x680 [ 84.937916][ T5328] #1: ffff888042fd62c8 (&hip->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x215/0x1d70 [ 84.942487][ T5328] #2: ffff88801f76c0b0 (&tree->tree_lock/1){+.+.}-{4:4}, at: hfsplus_find_init+0x168/0x2d0 [ 84.946945][ T5328] [ 84.946945][ T5328] stack backtrace: [ 84.949441][ T5328] CPU: 0 UID: 0 PID: 5328 Comm: syz.0.0 Not tainted syzkaller #0 PREEMPT(full) [ 84.949457][ T5328] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 84.949467][ T5328] Call Trace: [ 84.949478][ T5328] [ 84.949485][ T5328] dump_stack_lvl+0xe8/0x150 [ 84.949509][ T5328] print_circular_bug+0x2e1/0x300 [ 84.949533][ T5328] check_noncircular+0x12e/0x150 [ 84.949553][ T5328] __lock_acquire+0x15a5/0x2cf0 [ 84.949574][ T5328] ? rcu_is_watching+0x15/0xb0 [ 84.949594][ T5328] ? lock_release+0x4b/0x3d0 [ 84.949636][ T5328] ? lock_release+0x4b/0x3d0 [ 84.949656][ T5328] lock_acquire+0xf0/0x2e0 [ 84.949671][ T5328] ? hfsplus_file_extend+0x215/0x1d70 [ 84.949687][ T5328] __mutex_lock+0x19f/0x1300 [ 84.949701][ T5328] ? hfsplus_file_extend+0x215/0x1d70 [ 84.949717][ T5328] ? stack_trace_save+0xa9/0x100 [ 84.949729][ T5328] ? __pfx_stack_trace_save+0x10/0x10 [ 84.949740][ T5328] ? hfsplus_file_extend+0x215/0x1d70 [ 84.949751][ T5328] ? __pfx___mutex_lock+0x10/0x10 [ 84.949764][ T5328] ? lockdep_unlock+0x5d/0xd0 [ 84.949777][ T5328] ? __lock_acquire+0x146e/0x2cf0 [ 84.949790][ T5328] ? _raw_spin_unlock_irqrestore+0x4c/0x80 [ 84.949802][ T5328] hfsplus_file_extend+0x215/0x1d70 [ 84.949815][ T5328] ? __pfx_hfsplus_file_extend+0x10/0x10 [ 84.949825][ T5328] ? __pfx___mutex_trylock_common+0x10/0x10 [ 84.949842][ T5328] ? rcu_is_watching+0x15/0xb0 [ 84.949857][ T5328] ? trace_contention_end+0x3d/0x150 [ 84.949866][ T5328] ? __asan_memset+0x22/0x50 [ 84.949883][ T5328] ? hfsplus_brec_find+0x19d/0x520 [ 84.949904][ T5328] hfsplus_bmap_reserve+0x125/0x510 [ 84.949918][ T5328] __hfsplus_ext_write_extent+0x28d/0x5b0 [ 84.949930][ T5328] __hfsplus_ext_cache_extent+0x89/0xe30 [ 84.949944][ T5328] hfsplus_file_extend+0x4af/0x1d70 [ 84.949959][ T5328] ? __pfx_hfsplus_file_extend+0x10/0x10 [ 84.949969][ T5328] ? clean_bdev_aliases+0x62e/0x750 [ 84.949984][ T5328] ? __pfx_clean_bdev_aliases+0x10/0x10 [ 84.949995][ T5328] hfsplus_get_block+0x42c/0x1670 [ 84.950007][ T5328] ? __pfx_hfsplus_get_block+0x10/0x10 [ 84.950017][ T5328] ? do_raw_spin_unlock+0x4d/0x210 [ 84.950029][ T5328] ? _raw_spin_unlock+0x28/0x50 [ 84.950042][ T5328] __block_write_begin_int+0x6c6/0x1910 [ 84.950059][ T5328] ? __pfx_hfsplus_get_block+0x10/0x10 [ 84.950069][ T5328] ? __pfx___block_write_begin_int+0x10/0x10 [ 84.950082][ T5328] cont_write_begin+0x737/0xae0 [ 84.950090][ T5328] ? irqentry_exit+0x59e/0x620 [ 84.950101][ T5328] ? __pfx_cont_write_begin+0x10/0x10 [ 84.950110][ T5328] hfsplus_write_begin+0x66/0xb0 [ 84.950121][ T5328] ? __pfx_hfsplus_get_block+0x10/0x10 [ 84.950128][ T5328] generic_perform_write+0x2e2/0x8f0 [ 84.950138][ T5328] ? __pfx_generic_perform_write+0x10/0x10 [ 84.950146][ T5328] ? file_update_time_flags+0x219/0x4a0 [ 84.950154][ T5328] ? __generic_file_write_iter+0xf9/0x230 [ 84.950162][ T5328] ? generic_file_write_iter+0x136/0x680 [ 84.950170][ T5328] generic_file_write_iter+0x14a/0x680 [ 84.950179][ T5328] ? __pfx_generic_file_write_iter+0x10/0x10 [ 84.950186][ T5328] ? do_raw_spin_lock+0x12b/0x2f0 [ 84.950194][ T5328] ? __lock_acquire+0x6b5/0x2cf0 [ 84.950203][ T5328] ? lockdep_hardirqs_on+0x7a/0x110 [ 84.950213][ T5328] ? kasan_save_track+0x4f/0x80 [ 84.950221][ T5328] ? aio_write+0x547/0x870 [ 84.950229][ T5328] aio_write+0x5cd/0x870 [ 84.950240][ T5328] ? __pfx_aio_write+0x10/0x10 [ 84.950255][ T5328] io_submit_one+0x7bb/0x14c0 [ 84.950277][ T5328] ? irqentry_exit+0x59e/0x620 [ 84.950290][ T5328] ? trace_irq_disable+0x3b/0x150 [ 84.950299][ T5328] ? __pfx_io_submit_one+0x10/0x10 [ 84.950310][ T5328] ? __might_fault+0xaf/0x130 [ 84.950324][ T5328] __se_sys_io_submit+0x195/0x340 [ 84.950340][ T5328] ? __pfx___se_sys_io_submit+0x10/0x10 [ 84.950354][ T5328] do_syscall_64+0x14d/0xf80 [ 84.950366][ T5328] ? trace_irq_disable+0x3b/0x150 [ 84.950376][ T5328] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 84.950386][ T5328] ? clear_bhb_loop+0x40/0x90 [ 84.950397][ T5328] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 84.950409][ T5328] RIP: 0033:0x7f63abb9c819 [ 84.950422][ T5328] 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 [ 84.950434][ T5328] RSP: 002b:00007f63aca49fe8 EFLAGS: 00000246 ORIG_RAX: 00000000000000d1 [ 84.950477][ T5328] RAX: ffffffffffffffda RBX: 00007f63abe15fa0 RCX: 00007f63abb9c819 [ 84.950486][ T5328] RDX: 0000200000000540 RSI: 000000000000003b RDI: 00007f63ac9df000 [ 84.950494][ T5328] RBP: 00007f63abc32c91 R08: 0000000000000000 R09: 0000000000000000 [ 84.950502][ T5328] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 [ 84.950510][ T5328] R13: 00007f63abe16038 R14: 00007f63abe15fa0 R15: 00007ffe61c32dd8 [ 84.950521][ T5328]