program: syz_mount_image$hfsplus(&(0x7f0000000040), &(0x7f0000000080)='./file1\x00', 0x400, &(0x7f0000000140)=ANY=[], 0x1, 0x694, &(0x7f0000001100)="$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") r0 = openat(0xffffffffffffff9c, &(0x7f0000000040)='./file1\x00', 0x101042, 0x0) pwrite64(r0, &(0x7f00000005c0)='\"', 0x1, 0x800) socketpair$unix(0x1, 0x1, 0x0, &(0x7f0000000000)={0xffffffffffffffff, 0xffffffffffffffff}) getsockopt$sock_cred(r2, 0x1, 0x11, &(0x7f0000000280)={0x0}, &(0x7f00000013c0)=0xc) sendmmsg$unix(r2, &(0x7f00000014c0)=[{{0x0, 0x0, &(0x7f00000003c0)=[{&(0x7f0000000140)='8', 0x1}], 0x1, &(0x7f0000000040)=[@cred={{0x1c, 0x1, 0x2, {r3, 0x0, 0xee01}}}], 0x20}}], 0x1, 0x0) pipe(&(0x7f0000000080)={0xffffffffffffffff, 0xffffffffffffffff}) setsockopt$sock_int(r1, 0x1, 0x10, &(0x7f00000002c0)=0x8001, 0x4) write$binfmt_elf64(r2, &(0x7f0000000300)=ANY=[], 0x78) splice(r1, 0x0, r4, 0x0, 0x39000, 0x0) ioctl$KVM_CREATE_VM(r0, 0xae01, 0x8) r5 = creat(&(0x7f0000000000)='./bus\x00', 0x0) io_setup(0x202, &(0x7f0000000200)=0x0) io_submit(r6, 0x3b, &(0x7f0000000540)=[&(0x7f00000000c0)={0x25, 0xe7030000, 0x0, 0x1, 0x0, r5, &(0x7f0000000000), 0x70000}]) [ 76.266682][ T4707] Bluetooth: hci0: command tx timeout [ 76.311971][ T5359] loop0: detected capacity change from 0 to 1024 [ 76.404238][ T26] audit: type=1800 audit(1758064741.608:2): pid=5359 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 [ 76.423916][ T5359] [ 76.425017][ T5359] ====================================================== [ 76.428084][ T5359] WARNING: possible circular locking dependency detected [ 76.430972][ T5359] syzkaller #0 Not tainted [ 76.432855][ T5359] ------------------------------------------------------ [ 76.435763][ T5359] syz.0.0/5359 is trying to acquire lock: [ 76.438123][ T5359] ffff888052db0108 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x1fc/0x1990 [ 76.442765][ T5359] [ 76.442765][ T5359] but task is already holding lock: [ 76.445899][ T5359] ffff88801a4f80b0 (&tree->tree_lock/1){+.+.}-{4:4}, at: hfsplus_find_init+0x15a/0x1d0 [ 76.449851][ T5359] [ 76.449851][ T5359] which lock already depends on the new lock. [ 76.449851][ T5359] [ 76.454018][ T5359] [ 76.454018][ T5359] the existing dependency chain (in reverse order) is: [ 76.457708][ T5359] [ 76.457708][ T5359] -> #1 (&tree->tree_lock/1){+.+.}-{4:4}: [ 76.460929][ T5359] lock_acquire+0x120/0x360 [ 76.463025][ T5359] __mutex_lock+0x187/0x1350 [ 76.465113][ T5359] hfsplus_find_init+0x15a/0x1d0 [ 76.467504][ T5359] hfsplus_get_block+0x8dd/0x1530 [ 76.469944][ T5359] block_read_full_folio+0x29f/0x830 [ 76.472523][ T5359] read_pages+0x35d/0x580 [ 76.474644][ T5359] page_cache_ra_unbounded+0x6b0/0x7b0 [ 76.477129][ T5359] filemap_get_pages+0x43c/0x1ea0 [ 76.479307][ T5359] filemap_read+0x3f6/0x11a0 [ 76.481360][ T5359] __kernel_read+0x4cf/0x960 [ 76.483518][ T5359] integrity_kernel_read+0x89/0xd0 [ 76.485918][ T5359] ima_calc_file_hash+0x85e/0x16f0 [ 76.488326][ T5359] ima_collect_measurement+0x428/0x8e0 [ 76.490920][ T5359] process_measurement+0x1121/0x1a40 [ 76.493435][ T5359] ima_file_check+0xd7/0x120 [ 76.495670][ T5359] security_file_post_open+0xbb/0x290 [ 76.498194][ T5359] path_openat+0x2f26/0x3830 [ 76.500491][ T5359] do_filp_open+0x1fa/0x410 [ 76.502633][ T5359] do_sys_openat2+0x121/0x1c0 [ 76.504877][ T5359] __x64_sys_openat+0x138/0x170 [ 76.507312][ T5359] do_syscall_64+0xfa/0x3b0 [ 76.509423][ T5359] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 76.512098][ T5359] [ 76.512098][ T5359] -> #0 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}: [ 76.515853][ T5359] validate_chain+0xb9b/0x2140 [ 76.518110][ T5359] __lock_acquire+0xab9/0xd20 [ 76.520467][ T5359] lock_acquire+0x120/0x360 [ 76.522627][ T5359] __mutex_lock+0x187/0x1350 [ 76.524796][ T5359] hfsplus_file_extend+0x1fc/0x1990 [ 76.527424][ T5359] hfsplus_bmap_reserve+0x122/0x500 [ 76.529809][ T5359] __hfsplus_ext_write_extent+0x28d/0x5b0 [ 76.532356][ T5359] __hfsplus_ext_cache_extent+0x89/0xe30 [ 76.534920][ T5359] hfsplus_file_extend+0x444/0x1990 [ 76.537449][ T5359] hfsplus_get_block+0x411/0x1530 [ 76.539756][ T5359] __block_write_begin_int+0x6b5/0x1900 [ 76.542328][ T5359] cont_write_begin+0x789/0xb50 [ 76.544543][ T5359] hfsplus_write_begin+0x66/0xb0 [ 76.546856][ T5359] generic_perform_write+0x2c2/0x900 [ 76.549314][ T5359] generic_file_write_iter+0x117/0x550 [ 76.551926][ T5359] aio_write+0x535/0x7a0 [ 76.553966][ T5359] io_submit_one+0x78b/0x1310 [ 76.556232][ T5359] __se_sys_io_submit+0x185/0x2f0 [ 76.558583][ T5359] do_syscall_64+0xfa/0x3b0 [ 76.560718][ T5359] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 76.563688][ T5359] [ 76.563688][ T5359] other info that might help us debug this: [ 76.563688][ T5359] [ 76.568015][ T5359] Possible unsafe locking scenario: [ 76.568015][ T5359] [ 76.571095][ T5359] CPU0 CPU1 [ 76.573447][ T5359] ---- ---- [ 76.575704][ T5359] lock(&tree->tree_lock/1); [ 76.577773][ T5359] lock(&HFSPLUS_I(inode)->extents_lock); [ 76.581139][ T5359] lock(&tree->tree_lock/1); [ 76.584051][ T5359] lock(&HFSPLUS_I(inode)->extents_lock); [ 76.586789][ T5359] [ 76.586789][ T5359] *** DEADLOCK *** [ 76.586789][ T5359] [ 76.590470][ T5359] 3 locks held by syz.0.0/5359: [ 76.593041][ T5359] #0: ffff888052db3238 (&sb->s_type->i_mutex_key#20){+.+.}-{4:4}, at: generic_file_write_iter+0xeb/0x550 [ 76.598912][ T5359] #1: ffff888052db3048 (&hip->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x1fc/0x1990 [ 76.603693][ T5359] #2: ffff88801a4f80b0 (&tree->tree_lock/1){+.+.}-{4:4}, at: hfsplus_find_init+0x15a/0x1d0 [ 76.608002][ T5359] [ 76.608002][ T5359] stack backtrace: [ 76.610602][ T5359] CPU: 0 UID: 0 PID: 5359 Comm: syz.0.0 Not tainted syzkaller #0 PREEMPT(full) [ 76.610617][ T5359] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 [ 76.610624][ T5359] Call Trace: [ 76.610632][ T5359] [ 76.610639][ T5359] dump_stack_lvl+0x189/0x250 [ 76.610657][ T5359] ? __pfx_dump_stack_lvl+0x10/0x10 [ 76.610671][ T5359] ? __pfx__printk+0x10/0x10 [ 76.610686][ T5359] ? print_lock_name+0xde/0x100 [ 76.610700][ T5359] print_circular_bug+0x2ee/0x310 [ 76.610716][ T5359] check_noncircular+0x134/0x160 [ 76.610730][ T5359] validate_chain+0xb9b/0x2140 [ 76.610742][ T5359] ? rcu_is_watching+0x15/0xb0 [ 76.610755][ T5359] ? __kasan_check_byte+0x12/0x40 [ 76.610768][ T5359] ? rcu_is_watching+0x15/0xb0 [ 76.610778][ T5359] ? look_up_lock_class+0x74/0x170 [ 76.610791][ T5359] ? register_lock_class+0x51/0x320 [ 76.610805][ T5359] __lock_acquire+0xab9/0xd20 [ 76.610823][ T5359] ? hfsplus_file_extend+0x1fc/0x1990 [ 76.610834][ T5359] lock_acquire+0x120/0x360 [ 76.610849][ T5359] ? hfsplus_file_extend+0x1fc/0x1990 [ 76.610863][ T5359] __mutex_lock+0x187/0x1350 [ 76.610874][ T5359] ? hfsplus_file_extend+0x1fc/0x1990 [ 76.610884][ T5359] ? check_path+0x21/0x40 [ 76.610895][ T5359] ? check_noncircular+0xe0/0x160 [ 76.610907][ T5359] ? hfsplus_file_extend+0x1fc/0x1990 [ 76.610918][ T5359] ? lockdep_unlock+0x89/0x120 [ 76.610931][ T5359] ? __pfx___mutex_lock+0x10/0x10 [ 76.610943][ T5359] hfsplus_file_extend+0x1fc/0x1990 [ 76.610954][ T5359] ? __lock_acquire+0xab9/0xd20 [ 76.610970][ T5359] ? __pfx_hfsplus_file_extend+0x10/0x10 [ 76.610980][ T5359] ? __pfx___mutex_trylock_common+0x10/0x10 [ 76.610990][ T5359] ? __se_sys_io_submit+0x185/0x2f0 [ 76.611002][ T5359] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 76.611012][ T5359] ? rcu_is_watching+0x15/0xb0 [ 76.611021][ T5359] ? trace_contention_end+0x39/0x120 [ 76.611032][ T5359] ? __mutex_lock+0x335/0x1350 [ 76.611040][ T5359] ? hfsplus_brec_find+0x191/0x500 [ 76.611055][ T5359] hfsplus_bmap_reserve+0x122/0x500 [ 76.611070][ T5359] __hfsplus_ext_write_extent+0x28d/0x5b0 [ 76.611082][ T5359] __hfsplus_ext_cache_extent+0x89/0xe30 [ 76.611094][ T5359] hfsplus_file_extend+0x444/0x1990 [ 76.611106][ T5359] ? __pfx_hfsplus_file_extend+0x10/0x10 [ 76.611117][ T5359] ? clean_bdev_aliases+0x5c9/0x6b0 [ 76.611133][ T5359] ? __pfx_clean_bdev_aliases+0x10/0x10 [ 76.611149][ T5359] hfsplus_get_block+0x411/0x1530 [ 76.611162][ T5359] ? __pfx_hfsplus_get_block+0x10/0x10 [ 76.611173][ T5359] ? do_raw_spin_unlock+0x4d/0x240 [ 76.611186][ T5359] ? _raw_spin_unlock+0x28/0x50 [ 76.611198][ T5359] __block_write_begin_int+0x6b5/0x1900 [ 76.611209][ T5359] ? folio_add_lru+0x1b2/0x3d0 [ 76.611223][ T5359] ? __pfx_hfsplus_get_block+0x10/0x10 [ 76.611233][ T5359] ? __pfx___block_write_begin_int+0x10/0x10 [ 76.611244][ T5359] cont_write_begin+0x789/0xb50 [ 76.611254][ T5359] ? __pfx_cont_write_begin+0x10/0x10 [ 76.611263][ T5359] ? __pfx___might_resched+0x10/0x10 [ 76.611283][ T5359] ? __mark_inode_dirty+0x3d2/0xe10 [ 76.611298][ T5359] ? folio_unlock+0x101/0x160 [ 76.611311][ T5359] hfsplus_write_begin+0x66/0xb0 [ 76.611319][ T5359] ? __pfx_hfsplus_get_block+0x10/0x10 [ 76.611330][ T5359] generic_perform_write+0x2c2/0x900 [ 76.611341][ T5359] ? __pfx_generic_perform_write+0x10/0x10 [ 76.611352][ T5359] ? file_update_time+0x2da/0x490 [ 76.611362][ T5359] ? __generic_file_write_iter+0xf9/0x230 [ 76.611372][ T5359] ? generic_file_write_iter+0x103/0x550 [ 76.611382][ T5359] generic_file_write_iter+0x117/0x550 [ 76.611393][ T5359] ? __pfx_generic_file_write_iter+0x10/0x10 [ 76.611402][ T5359] ? lockdep_hardirqs_on+0x9c/0x150 [ 76.611418][ T5359] ? _raw_spin_unlock_irqrestore+0xad/0x110 [ 76.611432][ T5359] ? __pfx_aa_file_perm+0x10/0x10 [ 76.611449][ T5359] ? __lock_acquire+0xab9/0xd20 [ 76.611468][ T5359] ? aio_write+0x4c4/0x7a0 [ 76.611483][ T5359] aio_write+0x535/0x7a0 [ 76.611497][ T5359] ? __pfx_aio_write+0x10/0x10 [ 76.611512][ T5359] ? __might_fault+0xb0/0x130 [ 76.611527][ T5359] io_submit_one+0x78b/0x1310 [ 76.611545][ T5359] ? __pfx_io_submit_one+0x10/0x10 [ 76.611559][ T5359] ? __might_fault+0xb0/0x130 [ 76.611573][ T5359] ? __might_fault+0xb0/0x130 [ 76.611584][ T5359] __se_sys_io_submit+0x185/0x2f0 [ 76.611596][ T5359] ? __pfx___se_sys_io_submit+0x10/0x10 [ 76.611610][ T5359] ? do_syscall_64+0xbe/0x3b0 [ 76.611620][ T5359] do_syscall_64+0xfa/0x3b0 [ 76.611629][ T5359] ? lockdep_hardirqs_on+0x9c/0x150 [ 76.611643][ T5359] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 76.611652][ T5359] ? clear_bhb_loop+0x60/0xb0 [ 76.611663][ T5359] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 76.611672][ T5359] RIP: 0033:0x7faaa878eba9 [ 76.611682][ T5359] Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 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 a8 ff ff ff f7 d8 64 89 01 48 [ 76.611691][ T5359] RSP: 002b:00007faaa961d038 EFLAGS: 00000246 ORIG_RAX: 00000000000000d1 [ 76.611703][ T5359] RAX: ffffffffffffffda RBX: 00007faaa89d5fa0 RCX: 00007faaa878eba9 [ 76.611711][ T5359] RDX: 0000200000000540 RSI: 000000000000003b RDI: 00007faaa95d3000 [ 76.611718][ T5359] RBP: 00007faaa8811e19 R08: 0000000000000000 R09: 0000000000000000 [ 76.611725][ T5359] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 [ 76.611731][ T5359] R13: 00007faaa89d6038 R14: 00007faaa89d5fa0 R15: 00007ffe89f8b2f8 [ 76.611742][ T5359] [ 76.834053][ T1316] ieee802154 phy0 wpan0: encryption failed: -22 [ 76.836927][ T1316] ieee802154 phy1 wpan1: encryption failed: -22