program: socket$nl_netfilter(0x10, 0x3, 0xc) r0 = openat$vmci(0xffffffffffffff9c, &(0x7f00000000c0), 0x2, 0x0) ioctl$IOCTL_VMCI_VERSION2(r0, 0x7a7, &(0x7f0000000040)=0x90000) ioctl$IOCTL_VMCI_INIT_CONTEXT(r0, 0x7a0, &(0x7f0000000000)={@local}) ioctl$IOCTL_VMCI_QUEUEPAIR_ALLOC(r0, 0x7a8, &(0x7f0000000540)={{@hyper, 0x2}, @hyper, 0x0, 0x0, 0x5e}) r1 = syz_usb_connect(0x0, 0x2d, &(0x7f0000000000)=ANY=[@ANYBLOB="1201000083667d1040206402d14e0102030109021b000100000000090400000190f19c00090584"], 0x0) r2 = openat$mixer(0xffffffffffffff9c, &(0x7f0000000700), 0x0, 0x0) ioctl$EXT4_IOC_GETFSUUID(r2, 0x8008662c, 0x0) syz_usb_control_io$hid(r1, 0x0, 0x0) syz_usb_control_io(r1, 0x0, 0x0) syz_usb_control_io(r1, 0x0, 0x0) syz_usb_control_io$cdc_ncm(r1, 0x0, 0x0) syz_usb_control_io$hid(r1, 0x0, 0x0) syz_usb_control_io$printer(r1, 0x0, 0x0) syz_usb_control_io$sierra_net(r1, 0x0, 0x0) syz_usb_control_io$lan78xx(r1, 0x0, 0x0) sendmmsg$inet(0xffffffffffffffff, &(0x7f00000008c0)=[{{0x0, 0x0, &(0x7f00000006c0)=[{&(0x7f0000000140)="f1a0fa9090d465b080d9209c8845fdcaef275aaa15abcd5cd1153a72ef30f13819e7e8929f54ba0f61cab747ec572e7721478ce702eaa7b41015c3215e1643c7ec", 0x41}], 0x1}}], 0x1, 0x4000) syz_mount_image$hfsplus(&(0x7f0000000600), &(0x7f0000000040)='./file1\x00', 0x0, &(0x7f0000000080)={[{@part={'part', 0x3d, 0x500f}}, {@nodecompose}, {}, {@part={'part', 0x3d, 0xc}}, {@uid}, {@barrier}, {@nls={'nls', 0x3d, 'cp949'}}, {@gid={'gid', 0x3d, 0xee00}}]}, 0x3, 0x5f4, &(0x7f0000000640)="$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") setxattr(&(0x7f0000000040)='./file0\x00', &(0x7f0000000140)=ANY=[@ANYBLOB='osx.'], 0x0, 0x0, 0x0) r3 = openat$kvm(0xffffffffffffff9c, &(0x7f0000000180), 0x2, 0x0) ioctl$KVM_GET_MSRS_sys(r3, 0xc008ae88, &(0x7f0000000940)={0x1, 0x0, [{0x489, 0x0, 0x4}]}) listxattr(&(0x7f0000000100)='./file0\x00', 0x0, 0x0) r4 = syz_open_dev$I2C(&(0x7f0000000180), 0x201, 0x40040) ioctl$I2C_RDWR(r4, 0x707, &(0x7f00000000c0)={&(0x7f0000000a80)=[{0x50, 0xf5, 0x0, 0x0}], 0x1}) r5 = openat$vmci(0xffffffffffffff9c, &(0x7f0000000140), 0x2, 0x0) ioctl$IOCTL_VMCI_VERSION2(r5, 0x7a7, &(0x7f0000000100)=0xb0000) ioctl$IOCTL_VMCI_INIT_CONTEXT(r5, 0x7a0, &(0x7f0000000240)={@hyper}) creat(&(0x7f00000001c0)='./file1\x00', 0x0) ioctl$IOCTL_VMCI_QUEUEPAIR_ALLOC(r5, 0x7a8, &(0x7f0000000540)={{@hyper, 0x2}, @hyper, 0x0, 0x0, 0x5e, 0xfffffffffffffff9}) close(0x4) [ 85.173847][ T4665] Bluetooth: hci0: command tx timeout [ 85.724848][ T5318] usb 5-1: new high-speed USB device number 2 using dummy_hcd [ 85.874108][ T5318] usb 5-1: Using ep0 maxpacket: 16 [ 85.880592][ T5318] usb 5-1: config 0 interface 0 altsetting 0 endpoint 0x84 has invalid wMaxPacketSize 0 [ 85.888640][ T5318] usb 5-1: New USB device found, idVendor=2040, idProduct=0264, bcdDevice=4e.d1 [ 85.892605][ T5318] usb 5-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 85.897161][ T5318] usb 5-1: Product: syz [ 85.899577][ T5318] usb 5-1: Manufacturer: syz [ 85.902225][ T5318] usb 5-1: SerialNumber: syz [ 85.916492][ T5318] usb 5-1: config 0 descriptor?? [ 85.930877][ T5318] em28xx 5-1:0.0: New device syz syz @ 480 Mbps (2040:0264, interface 0, class 0) [ 85.939860][ T5318] em28xx 5-1:0.0: DVB interface 0 found: bulk [ 86.526329][ T5318] em28xx 5-1:0.0: unknown em28xx chip ID (0) [ 86.955671][ T5318] em28xx 5-1:0.0: reading from i2c device at 0xa0 failed (error=-5) [ 86.962008][ T5318] em28xx 5-1:0.0: board has no eeprom [ 87.192541][ T5321] loop0: detected capacity change from 0 to 1024 [ 87.219187][ T4665] Bluetooth: hci0: command tx timeout [ 87.347718][ T5322] [ 87.348985][ T5322] ============================================ [ 87.351772][ T5322] WARNING: possible recursive locking detected [ 87.354207][ T5322] syzkaller #0 Not tainted [ 87.356140][ T5322] -------------------------------------------- [ 87.359267][ T5322] syz.0.0/5322 is trying to acquire lock: [ 87.362153][ T5322] ffff88804233b708 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_get_block+0x39e/0x1670 [ 87.367104][ T5322] [ 87.367104][ T5322] but task is already holding lock: [ 87.371136][ T5322] ffff888042339c08 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_truncate+0x2b3/0xc30 [ 87.377303][ T5322] [ 87.377303][ T5322] other info that might help us debug this: [ 87.380968][ T5322] Possible unsafe locking scenario: [ 87.380968][ T5322] [ 87.384001][ T5322] CPU0 [ 87.385503][ T5322] ---- [ 87.387173][ T5322] lock(&HFSPLUS_I(inode)->extents_lock); [ 87.389990][ T5322] lock(&HFSPLUS_I(inode)->extents_lock); [ 87.392350][ T5322] [ 87.392350][ T5322] *** DEADLOCK *** [ 87.392350][ T5322] [ 87.395494][ T5322] May be due to missing lock nesting notation [ 87.395494][ T5322] [ 87.399010][ T5322] 4 locks held by syz.0.0/5322: [ 87.400951][ T5322] #0: ffff888012340420 (sb_writers#12){.+.+}-{0:0}, at: mnt_want_write+0x41/0x90 [ 87.405444][ T5322] #1: ffff888042339df8 (&sb->s_type->i_mutex_key#25){+.+.}-{4:4}, at: do_truncate+0x18f/0x250 [ 87.410361][ T5322] #2: ffff888042339c08 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_truncate+0x2b3/0xc30 [ 87.415302][ T5322] #3: ffff88804210b8f8 (&sbi->alloc_mutex){+.+.}-{4:4}, at: hfsplus_block_free+0xc7/0x630 [ 87.419487][ T5322] [ 87.419487][ T5322] stack backtrace: [ 87.422302][ T5322] CPU: 0 UID: 0 PID: 5322 Comm: syz.0.0 Not tainted syzkaller #0 PREEMPT(full) [ 87.422324][ T5322] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 87.422335][ T5322] Call Trace: [ 87.422345][ T5322] [ 87.422354][ T5322] dump_stack_lvl+0xe8/0x150 [ 87.422380][ T5322] print_deadlock_bug+0x279/0x290 [ 87.422405][ T5322] __lock_acquire+0x253f/0x2cf0 [ 87.422426][ T5322] ? lock_release+0x4b/0x3d0 [ 87.422442][ T5322] ? lock_release+0x4b/0x3d0 [ 87.422459][ T5322] ? is_bpf_text_address+0x292/0x2b0 [ 87.422474][ T5322] ? is_bpf_text_address+0x26/0x2b0 [ 87.422488][ T5322] lock_acquire+0xf0/0x2e0 [ 87.422503][ T5322] ? hfsplus_get_block+0x39e/0x1670 [ 87.422519][ T5322] __mutex_lock+0x19f/0x1300 [ 87.422590][ T5322] ? hfsplus_get_block+0x39e/0x1670 [ 87.422605][ T5322] ? stack_trace_save+0xa9/0x100 [ 87.422627][ T5322] ? __pfx_stack_trace_save+0x10/0x10 [ 87.422643][ T5322] ? check_path+0x21/0x40 [ 87.422669][ T5322] ? check_noncircular+0xda/0x150 [ 87.422689][ T5322] ? hfsplus_get_block+0x39e/0x1670 [ 87.422701][ T5322] ? __pfx___mutex_lock+0x10/0x10 [ 87.422719][ T5322] ? __lock_acquire+0x146e/0x2cf0 [ 87.422742][ T5322] hfsplus_get_block+0x39e/0x1670 [ 87.422760][ T5322] ? __pfx_hfsplus_get_block+0x10/0x10 [ 87.422775][ T5322] ? block_read_full_folio+0x672/0x830 [ 87.422792][ T5322] block_read_full_folio+0x29f/0x830 [ 87.422807][ T5322] ? __pfx_hfsplus_get_block+0x10/0x10 [ 87.422819][ T5322] filemap_read_folio+0x137/0x3b0 [ 87.422833][ T5322] ? __pfx_hfsplus_read_folio+0x10/0x10 [ 87.422852][ T5322] ? __pfx_filemap_read_folio+0x10/0x10 [ 87.422865][ T5322] ? filemap_add_folio+0x356/0x530 [ 87.422885][ T5322] do_read_cache_folio+0x358/0x590 [ 87.422900][ T5322] ? __pfx_hfsplus_read_folio+0x10/0x10 [ 87.422919][ T5322] read_cache_page+0x5d/0x170 [ 87.422933][ T5322] hfsplus_block_free+0x134/0x630 [ 87.422950][ T5322] ? __kmalloc_noprof+0x37d/0x760 [ 87.422964][ T5322] hfsplus_free_extents+0x121/0xa50 [ 87.422978][ T5322] hfsplus_file_truncate+0x762/0xc30 [ 87.422993][ T5322] ? __pfx___up_read+0x10/0x10 [ 87.423007][ T5322] ? __pfx_hfsplus_file_truncate+0x10/0x10 [ 87.423020][ T5322] ? unmap_mapping_range+0xe6/0x180 [ 87.423036][ T5322] ? __pfx_unmap_mapping_range+0x10/0x10 [ 87.423052][ T5322] ? setattr_prepare+0x232/0xb30 [ 87.423068][ T5322] ? truncate_setsize+0xcf/0xf0 [ 87.423086][ T5322] hfsplus_setattr+0x1c4/0x270 [ 87.423105][ T5322] ? __pfx_hfsplus_setattr+0x10/0x10 [ 87.423125][ T5322] notify_change+0xc1a/0xf40 [ 87.423140][ T5322] do_truncate+0x1c2/0x250 [ 87.423153][ T5322] ? __pfx_do_truncate+0x10/0x10 [ 87.423166][ T5322] ? apparmor_file_truncate+0x39f/0x470 [ 87.423241][ T5322] path_openat+0x2f89/0x3860 [ 87.423262][ T5322] ? __pfx_path_openat+0x10/0x10 [ 87.423275][ T5322] ? __x64_sys_creat+0x8f/0xc0 [ 87.423297][ T5322] ? __lock_acquire+0x6b5/0x2cf0 [ 87.423315][ T5322] do_file_open+0x23e/0x4a0 [ 87.423331][ T5322] ? __pfx_do_file_open+0x10/0x10 [ 87.423348][ T5322] ? _raw_spin_unlock+0x28/0x50 [ 87.423361][ T5322] ? alloc_fd+0x64b/0x6c0 [ 87.423378][ T5322] do_sys_openat2+0x113/0x200 [ 87.423394][ T5322] ? __se_sys_futex+0x3a8/0x450 [ 87.423410][ T5322] ? __pfx_do_sys_openat2+0x10/0x10 [ 87.423427][ T5322] ? rcu_is_watching+0x15/0xb0 [ 87.423445][ T5322] __x64_sys_creat+0x8f/0xc0 [ 87.423463][ T5322] do_syscall_64+0x14d/0xf80 [ 87.423479][ T5322] ? trace_irq_disable+0x3b/0x150 [ 87.423491][ T5322] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 87.423503][ T5322] ? clear_bhb_loop+0x40/0x90 [ 87.423516][ T5322] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 87.423530][ T5322] RIP: 0033:0x7f6e0ff9c819 [ 87.423546][ T5322] 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 [ 87.423556][ T5322] RSP: 002b:00007f6e10e05fe8 EFLAGS: 00000246 ORIG_RAX: 0000000000000055 [ 87.423573][ T5322] RAX: ffffffffffffffda RBX: 00007f6e10216090 RCX: 00007f6e0ff9c819 [ 87.423582][ T5322] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 00002000000001c0 [ 87.423590][ T5322] RBP: 00007f6e10032c91 R08: 0000000000000000 R09: 0000000000000000 [ 87.423599][ T5322] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 [ 87.423607][ T5322] R13: 00007f6e10216128 R14: 00007f6e10216090 R15: 00007fff752a3be8 [ 87.423623][ T5322] [ 87.644643][ T5322] hfsplus: unable to mark blocks free: error -5 [ 87.649592][ T5322] hfsplus: can't free extent: start 134, count 1 [ 88.015199][ T5321] em28xx 5-1:0.0: reading from i2c device at 0xa0 failed (error=-5) [ 88.074018][ T5318] em28xx 5-1:0.0: Identified as PCTV tripleStick (292e) (card=94) [ 88.078416][ T5318] em28xx 5-1:0.0: dvb set to bulk mode. [ 88.081308][ T5312] em28xx 5-1:0.0: Binding DVB extension [ 88.088547][ T5318] usb 5-1: USB disconnect, device number 2 [ 88.091373][ T5318] em28xx 5-1:0.0: Disconnecting em28xx [ 88.138342][ T5312] em28xx 5-1:0.0: Registering input extension [ 88.143062][ T5318] em28xx 5-1:0.0: Closing input extension [ 88.153082][ T5318] em28xx 5-1:0.0: Freeing device