program: r0 = socket$nl_generic(0x10, 0x3, 0x10) r1 = syz_genetlink_get_family_id$devlink(&(0x7f0000000380), 0xffffffffffffffff) sendmsg$DEVLINK_CMD_SB_PORT_POOL_GET(r0, &(0x7f0000000400)={&(0x7f0000000340), 0xc, &(0x7f00000003c0)={&(0x7f0000000580)={0xf4, r1, 0x8, 0x70bd2b, 0x25dfdbff, {}, [{{@nsim={{0xe}, {0xf, 0x2, {'netdevsim', 0x0}}}, {0x8}}, {0x8, 0xb, 0x7f00}, {0x6}}, {{@nsim={{0xe}, {0xf, 0x2, {'netdevsim', 0x0}}}, {0x8}}, {0x8, 0xb, 0xa5}, {0x6, 0x11, 0x6}}, {{@nsim={{0xe}, {0xf, 0x2, {'netdevsim', 0x0}}}, {0x8, 0x3, 0x3}}, {0x8, 0xb, 0x2}, {0x6, 0x11, 0x5}}, {{@nsim={{0xe}, {0xf, 0x2, {'netdevsim', 0x0}}}, {0x8}}, {0x8, 0xb, 0x7}, {0x6, 0x11, 0x9}}]}, 0xf4}, 0x1, 0x0, 0x0, 0x84}, 0x20000041) r2 = openat$ttyS3(0xffffff9c, &(0x7f0000000000), 0x8000, 0x0) ioctl$TIOCCBRK(r2, 0x5428) syz_mount_image$hfsplus(&(0x7f0000000040), &(0x7f0000000080)='./file1\x00', 0x400, &(0x7f0000000140)=ANY=[], 0x1, 0x694, &(0x7f0000001100)="$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") r3 = syz_open_procfs(0x0, &(0x7f0000000000)='net/mcfilter\x00') r4 = socket$inet_icmp_raw(0x2, 0x3, 0x1) setsockopt$inet_group_source_req(r4, 0x0, 0x2e, &(0x7f0000000440)={0x2, {{0x2, 0x0, @multicast2}}, {{0x2, 0x0, @empty}}}, 0x108) r5 = syz_open_dev$vbi(&(0x7f0000000000), 0x0, 0x2) ioctl$VIDIOC_CREATE_BUFS(r5, 0xc100565c, &(0x7f0000000240)={0xa6, 0x9, 0x0, {0x6, @raw_data="99bdc8a7a93848d31befcb86a38037bbbedbd5ca48f763a573b8fb628e5ae61b91aa383491270037cec20bb29ef483d133588d4c377df7982f3876fd1c56a9c8f3c386935c36f435ac96b528c0dc1bc9c727a2e92b3d910df3476cd8b75d6abd02769647a58559f18e51959b742ac03b62e530178246182a495af58f1cc0186c1dd9ba7d49c50ea76c384043a3bda3b8c2e7b2c302e00f8aaceea43346b719cb4e3d7d2a79e6179057c3be975f4c6e96c74cd16d3dceafdbbd931aa77410ad57eac3681dbdbb6a01"}, 0x9}) ioctl$VIDIOC_S_INPUT(r5, 0xc0045627, &(0x7f00000000c0)=0x1) r6 = socket$kcm(0x10, 0x2, 0x10) sendmsg$kcm(r6, &(0x7f0000000240)={0x0, 0x0, &(0x7f0000000300)=[{&(0x7f00000000c0)="1400000032000b0fd25a806c8c6f94f90324fc60", 0x14}], 0x1}, 0x0) getsockopt$inet_sctp_SCTP_NODELAY(r3, 0x84, 0x3, &(0x7f0000000180), &(0x7f00000001c0)=0x4) ppoll(&(0x7f0000000080), 0xffffffffffffffc2, 0x0, 0x0, 0x0) preadv(r3, &(0x7f00000000c0)=[{&(0x7f0000002240)=""/65, 0x41}, {&(0x7f0000000040)=""/49, 0x31}], 0x2, 0x0, 0x0) r7 = creat(&(0x7f0000000140)='./file1\x00', 0x0) io_setup(0x202, &(0x7f0000000200)=0x0) ioctl$VIDIOC_S_INPUT(r5, 0xc0045627, &(0x7f0000000100)=0x525d73d2) io_submit(r8, 0x3b, &(0x7f0000000540)=[&(0x7f00000000c0)={0x25, 0xe7030000, 0x0, 0x1, 0x0, r7, &(0x7f0000000000), 0x70000}]) [ 84.955535][ T4674] Bluetooth: hci0: command tx timeout [ 85.039716][ T5327] loop0: detected capacity change from 0 to 1024 [ 85.135930][ T5327] [ 85.137077][ T5327] ============================================ [ 85.140164][ T5327] WARNING: possible recursive locking detected [ 85.142720][ T5327] 6.15.0-syzkaller-08486-gf66bc387efbe #0 Not tainted [ 85.145924][ T5327] -------------------------------------------- [ 85.148479][ T5327] syz.0.0/5327 is trying to acquire lock: [ 85.151029][ T5327] ffff8880419a8108 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x1fc/0x1990 [ 85.155840][ T5327] [ 85.155840][ T5327] but task is already holding lock: [ 85.159090][ T5327] ffff8880419aa988 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x1fc/0x1990 [ 85.163942][ T5327] [ 85.163942][ T5327] other info that might help us debug this: [ 85.167375][ T5327] Possible unsafe locking scenario: [ 85.167375][ T5327] [ 85.170596][ T5327] CPU0 [ 85.172119][ T5327] ---- [ 85.173641][ T5327] lock(&HFSPLUS_I(inode)->extents_lock); [ 85.176120][ T5327] lock(&HFSPLUS_I(inode)->extents_lock); [ 85.178681][ T5327] [ 85.178681][ T5327] *** DEADLOCK *** [ 85.178681][ T5327] [ 85.182132][ T5327] May be due to missing lock nesting notation [ 85.182132][ T5327] [ 85.185223][ T5327] 3 locks held by syz.0.0/5327: [ 85.187110][ T5327] #0: ffff8880419aab78 (&sb->s_type->i_mutex_key#20){+.+.}-{4:4}, at: generic_file_write_iter+0xe3/0x540 [ 85.191589][ T5327] #1: ffff8880419aa988 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_extend+0x1fc/0x1990 [ 85.196547][ T5327] #2: ffff8880431620b0 (&tree->tree_lock/1){+.+.}-{4:4}, at: hfsplus_find_init+0x15a/0x1d0 [ 85.200975][ T5327] [ 85.200975][ T5327] stack backtrace: [ 85.203604][ T5327] CPU: 0 UID: 0 PID: 5327 Comm: syz.0.0 Not tainted 6.15.0-syzkaller-08486-gf66bc387efbe #0 PREEMPT(full) [ 85.203620][ T5327] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 [ 85.203627][ T5327] Call Trace: [ 85.203634][ T5327] [ 85.203640][ T5327] dump_stack_lvl+0x189/0x250 [ 85.203662][ T5327] ? __pfx_dump_stack_lvl+0x10/0x10 [ 85.203680][ T5327] ? __pfx__printk+0x10/0x10 [ 85.203693][ T5327] ? print_lock_name+0xde/0x100 [ 85.203705][ T5327] print_deadlock_bug+0x28b/0x2a0 [ 85.203721][ T5327] validate_chain+0x1a3f/0x2140 [ 85.203737][ T5327] ? check_path+0x21/0x40 [ 85.203749][ T5327] ? check_noncircular+0xe0/0x160 [ 85.203764][ T5327] ? look_up_lock_class+0x74/0x170 [ 85.203819][ T5327] ? register_lock_class+0x51/0x320 [ 85.203832][ T5327] __lock_acquire+0xab9/0xd20 [ 85.203848][ T5327] ? hfsplus_file_extend+0x1fc/0x1990 [ 85.203866][ T5327] lock_acquire+0x120/0x360 [ 85.203877][ T5327] ? hfsplus_file_extend+0x1fc/0x1990 [ 85.203896][ T5327] __mutex_lock+0x182/0xe80 [ 85.203910][ T5327] ? hfsplus_file_extend+0x1fc/0x1990 [ 85.203925][ T5327] ? check_path+0x21/0x40 [ 85.203937][ T5327] ? check_noncircular+0xe0/0x160 [ 85.203950][ T5327] ? hfsplus_file_extend+0x1fc/0x1990 [ 85.203965][ T5327] ? __pfx___mutex_lock+0x10/0x10 [ 85.203982][ T5327] hfsplus_file_extend+0x1fc/0x1990 [ 85.203999][ T5327] ? __pfx_hfsplus_file_extend+0x10/0x10 [ 85.204014][ T5327] ? __mutex_trylock_common+0x153/0x260 [ 85.204028][ T5327] ? __pfx___mutex_trylock_common+0x10/0x10 [ 85.204044][ T5327] ? rcu_is_watching+0x15/0xb0 [ 85.204057][ T5327] ? trace_contention_end+0x39/0x120 [ 85.204071][ T5327] ? __mutex_lock+0x330/0xe80 [ 85.204083][ T5327] ? hfsplus_brec_find+0x191/0x500 [ 85.204096][ T5327] hfsplus_bmap_reserve+0x122/0x500 [ 85.204110][ T5327] __hfsplus_ext_write_extent+0x28d/0x5b0 [ 85.204127][ T5327] __hfsplus_ext_cache_extent+0x89/0xe30 [ 85.204144][ T5327] hfsplus_file_extend+0x444/0x1990 [ 85.204161][ T5327] ? __pfx_hfsplus_file_extend+0x10/0x10 [ 85.204178][ T5327] ? clean_bdev_aliases+0x5c9/0x6b0 [ 85.204195][ T5327] ? __pfx_clean_bdev_aliases+0x10/0x10 [ 85.204211][ T5327] hfsplus_get_block+0x411/0x1530 [ 85.204229][ T5327] ? __pfx_hfsplus_get_block+0x10/0x10 [ 85.204244][ T5327] ? do_raw_spin_unlock+0x4d/0x240 [ 85.204259][ T5327] ? _raw_spin_unlock+0x28/0x50 [ 85.204269][ T5327] __block_write_begin_int+0x6b2/0x1900 [ 85.204287][ T5327] ? folio_add_lru+0x1b2/0x3d0 [ 85.204298][ T5327] ? __pfx_hfsplus_get_block+0x10/0x10 [ 85.204313][ T5327] ? __pfx___block_write_begin_int+0x10/0x10 [ 85.204331][ T5327] cont_write_begin+0x789/0xb50 [ 85.204352][ T5327] ? __pfx_cont_write_begin+0x10/0x10 [ 85.204370][ T5327] ? __pfx___might_resched+0x10/0x10 [ 85.204384][ T5327] ? folio_unlock+0x101/0x160 [ 85.204407][ T5327] hfsplus_write_begin+0x66/0xb0 [ 85.204422][ T5327] ? __pfx_hfsplus_get_block+0x10/0x10 [ 85.204439][ T5327] generic_perform_write+0x2c4/0x910 [ 85.204454][ T5327] ? __pfx_generic_perform_write+0x10/0x10 [ 85.204465][ T5327] ? file_update_time+0x2da/0x490 [ 85.204476][ T5327] ? __generic_file_write_iter+0xf9/0x230 [ 85.204487][ T5327] ? generic_file_write_iter+0xfb/0x540 [ 85.204499][ T5327] generic_file_write_iter+0x10f/0x540 [ 85.204510][ T5327] ? aa_file_perm+0x11f/0xed0 [ 85.204523][ T5327] ? __pfx_generic_file_write_iter+0x10/0x10 [ 85.204539][ T5327] ? __lock_acquire+0xab9/0xd20 [ 85.204555][ T5327] ? aio_write+0x4c4/0x7a0 [ 85.204570][ T5327] aio_write+0x535/0x7a0 [ 85.204584][ T5327] ? __pfx_aio_write+0x10/0x10 [ 85.204600][ T5327] ? __might_fault+0xb0/0x130 [ 85.204616][ T5327] io_submit_one+0x78b/0x1310 [ 85.204634][ T5327] ? __pfx_io_submit_one+0x10/0x10 [ 85.204647][ T5327] ? __might_fault+0xb0/0x130 [ 85.204662][ T5327] ? __might_fault+0xb0/0x130 [ 85.204675][ T5327] __se_sys_io_submit+0x185/0x2f0 [ 85.204686][ T5327] ? __pfx___se_sys_io_submit+0x10/0x10 [ 85.204695][ T5327] ? do_syscall_64+0xbe/0x3b0 [ 85.204704][ T5327] do_syscall_64+0xfa/0x3b0 [ 85.204712][ T5327] ? lockdep_hardirqs_on+0x9c/0x150 [ 85.204719][ T5327] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 85.204726][ T5327] ? clear_bhb_loop+0x60/0xb0 [ 85.204733][ T5327] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 85.204741][ T5327] RIP: 0033:0x7f4aa198e969 [ 85.204749][ T5327] 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 [ 85.204756][ T5327] RSP: 002b:00007f4aa2743038 EFLAGS: 00000246 ORIG_RAX: 00000000000000d1 [ 85.204765][ T5327] RAX: ffffffffffffffda RBX: 00007f4aa1bb5fa0 RCX: 00007f4aa198e969 [ 85.204770][ T5327] RDX: 0000200000000540 RSI: 000000000000003b RDI: 00007f4aa26f9000 [ 85.204775][ T5327] RBP: 00007f4aa1a10ab1 R08: 0000000000000000 R09: 0000000000000000 [ 85.204780][ T5327] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 [ 85.204784][ T5327] R13: 0000000000000000 R14: 00007f4aa1bb5fa0 R15: 00007ffcecdb4ff8 [ 85.204791][ T5327]