program: r0 = socket(0x10, 0x3, 0x0) r1 = socket$packet(0x11, 0x2, 0x300) syz_mount_image$hfsplus(&(0x7f0000000040), &(0x7f0000000080)='./file1\x00', 0x400, &(0x7f0000000140)=ANY=[], 0x1, 0x694, &(0x7f0000001100)="$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") r2 = creat(&(0x7f0000000000)='./bus\x00', 0x0) io_setup(0x202, &(0x7f0000000200)=0x0) mount(&(0x7f0000000280)=@loop={'/dev/loop', 0x0}, &(0x7f0000000140)='./bus\x00', 0x0, 0x5000, 0x0) r4 = open(&(0x7f0000000000)='./bus\x00', 0x0, 0x0) ioctl$LOOP_SET_STATUS64(r4, 0x4c04, &(0x7f0000000540)={0x0, 0x0, 0x0, 0x0, 0x8005, 0x0, 0x0, 0x15, 0x1c, "ef359f413bb93852f7d6a4ae6dddfbd1ce5d29c2ee5e5ca9000ff8ee09e737ff0edf110ff4117639c2eb4b78c660e677df701905b9aafab4afaaf755a3f6a004", "036c47c6780820d1cbf7966d61fdcf335263bd9bffbcc2542ded71038259ca171ce1a311ef54ec32d71e14ef3dc177e9b48b00", "f28359738e229a4c66810000000000d300e6d602000000000000000000000001", [0x204]}) io_submit(r3, 0x3b, &(0x7f0000000540)=[&(0x7f00000000c0)={0x25, 0xe7030000, 0x0, 0x1, 0x0, r2, &(0x7f0000000000), 0x70000}]) truncate(&(0x7f00000001c0)='./file1\x00', 0xe62) ioctl$sock_SIOCGIFINDEX(r1, 0x8933, &(0x7f0000000080)={'veth1_to_bridge\x00', 0x0}) sendmsg$nl_route_sched(r0, &(0x7f00000000c0)={0x0, 0x0, &(0x7f0000000300)={&(0x7f0000000180)=@newqdisc={0x3c, 0x24, 0x3fe3aa0262d8c583, 0x100002, 0x0, {0x0, 0x0, 0x0, r5, {0x0, 0x3}, {0xffff, 0xffff}}, [@qdisc_kind_options=@q_fq_pie={{0xb}, {0xc, 0x8002, [@TCA_FQ_PIE_BETA={0x4, 0x6, 0x2}]}}]}, 0x3c}}, 0x0) ioctl$AUTOFS_DEV_IOCTL_TIMEOUT(r2, 0xc018937a, &(0x7f0000000100)={{0x1, 0x1, 0x18, r4, {0x7}}, './file1/file0\x00'}) [ 75.247872][ T5311] Bluetooth: hci0: command tx timeout [ 75.307048][ T5334] loop0: detected capacity change from 0 to 1024 [ 75.412313][ T5334] loop0: detected capacity change from 1024 to 64 [ 75.427116][ T5334] syz.0.0: attempt to access beyond end of device [ 75.427116][ T5334] loop0: rw=8388608, sector=86, nr_sectors = 2 limit=64 [ 75.450608][ T5334] Buffer I/O error on dev loop0, logical block 43, async page read [ 75.454852][ T5334] syz.0.0: attempt to access beyond end of device [ 75.454852][ T5334] loop0: rw=8388608, sector=88, nr_sectors = 2 limit=64 [ 75.460401][ T5334] Buffer I/O error on dev loop0, logical block 44, async page read [ 75.487456][ T5334] syz.0.0: attempt to access beyond end of device [ 75.487456][ T5334] loop0: rw=8388608, sector=90, nr_sectors = 2 limit=64 [ 75.498276][ T5334] Buffer I/O error on dev loop0, logical block 45, async page read [ 75.503013][ T5334] syz.0.0: attempt to access beyond end of device [ 75.503013][ T5334] loop0: rw=8388608, sector=92, nr_sectors = 2 limit=64 [ 75.508677][ T5334] Buffer I/O error on dev loop0, logical block 46, async page read [ 75.514966][ T5334] hfsplus: xattr searching failed [ 75.517725][ T5335] hfsplus: xattr searching failed [ 75.524837][ T5334] syz.0.0: attempt to access beyond end of device [ 75.524837][ T5334] loop0: rw=8390665, sector=350, nr_sectors = 64 limit=64 [ 75.531063][ T5334] syz.0.0: attempt to access beyond end of device [ 75.531063][ T5334] loop0: rw=8390665, sector=414, nr_sectors = 12 limit=64 [ 75.537998][ T5335] [ 75.539028][ T5335] ====================================================== [ 75.541814][ T5335] WARNING: possible circular locking dependency detected [ 75.544688][ T5335] syzkaller #0 Not tainted [ 75.546698][ T5335] ------------------------------------------------------ [ 75.549814][ T5335] syz.0.0/5335 is trying to acquire lock: [ 75.552274][ T5335] ffff8880357a20b0 (&tree->tree_lock/1){+.+.}-{4:4}, at: hfsplus_find_init+0x168/0x2d0 [ 75.556591][ T5335] [ 75.556591][ T5335] but task is already holding lock: [ 75.559722][ T5335] ffff88803d23b048 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_truncate+0x2a0/0xc10 [ 75.564208][ T5335] [ 75.564208][ T5335] which lock already depends on the new lock. [ 75.564208][ T5335] [ 75.568406][ T5335] [ 75.568406][ T5335] the existing dependency chain (in reverse order) is: [ 75.572335][ T5335] [ 75.572335][ T5335] -> #1 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}: [ 75.576019][ T5335] __mutex_lock+0x187/0x1350 [ 75.578139][ T5335] hfsplus_file_extend+0x1f8/0x1c30 [ 75.580403][ T5335] hfsplus_bmap_reserve+0x125/0x510 [ 75.582633][ T5335] __hfsplus_ext_write_extent+0x28d/0x5b0 [ 75.585086][ T5335] __hfsplus_ext_cache_extent+0x89/0xe30 [ 75.587520][ T5335] hfsplus_file_extend+0x437/0x1c30 [ 75.589762][ T5335] hfsplus_get_block+0x40a/0x1600 [ 75.592171][ T5335] __block_write_begin_int+0x6b5/0x1900 [ 75.594871][ T5335] cont_write_begin+0x78c/0xb50 [ 75.597258][ T5335] hfsplus_write_begin+0x66/0xb0 [ 75.599731][ T5335] generic_perform_write+0x2c5/0x900 [ 75.602261][ T5335] generic_file_write_iter+0x117/0x550 [ 75.604909][ T5335] aio_write+0x535/0x7a0 [ 75.607046][ T5335] io_submit_one+0x775/0x1430 [ 75.609445][ T5335] __se_sys_io_submit+0x185/0x320 [ 75.611847][ T5335] do_syscall_64+0xec/0xf80 [ 75.614099][ T5335] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 75.616897][ T5335] [ 75.616897][ T5335] -> #0 (&tree->tree_lock/1){+.+.}-{4:4}: [ 75.620281][ T5335] __lock_acquire+0x15a6/0x2cf0 [ 75.622624][ T5335] lock_acquire+0x107/0x340 [ 75.624939][ T5335] __mutex_lock+0x187/0x1350 [ 75.627128][ T5335] hfsplus_find_init+0x168/0x2d0 [ 75.629585][ T5335] hfsplus_file_truncate+0x387/0xc10 [ 75.632161][ T5335] hfsplus_setattr+0x1c4/0x270 [ 75.634502][ T5335] notify_change+0xc1a/0xf40 [ 75.636660][ T5335] do_truncate+0x1a4/0x220 [ 75.638934][ T5335] vfs_truncate+0x493/0x520 [ 75.641085][ T5335] do_sys_truncate+0xdb/0x190 [ 75.643408][ T5335] __x64_sys_truncate+0x5b/0x70 [ 75.645780][ T5335] do_syscall_64+0xec/0xf80 [ 75.647934][ T5335] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 75.650539][ T5335] [ 75.650539][ T5335] other info that might help us debug this: [ 75.650539][ T5335] [ 75.654831][ T5335] Possible unsafe locking scenario: [ 75.654831][ T5335] [ 75.658168][ T5335] CPU0 CPU1 [ 75.660478][ T5335] ---- ---- [ 75.662813][ T5335] lock(&HFSPLUS_I(inode)->extents_lock); [ 75.665327][ T5335] lock(&tree->tree_lock/1); [ 75.668569][ T5335] lock(&HFSPLUS_I(inode)->extents_lock); [ 75.672173][ T5335] lock(&tree->tree_lock/1); [ 75.674217][ T5335] [ 75.674217][ T5335] *** DEADLOCK *** [ 75.674217][ T5335] [ 75.678136][ T5335] 3 locks held by syz.0.0/5335: [ 75.680247][ T5335] #0: ffff888011f32420 (sb_writers#12){.+.+}-{0:0}, at: mnt_want_write+0x41/0x90 [ 75.684201][ T5335] #1: ffff88803d23b238 (&sb->s_type->i_mutex_key#24){+.+.}-{4:4}, at: do_truncate+0x171/0x220 [ 75.688837][ T5335] #2: ffff88803d23b048 (&HFSPLUS_I(inode)->extents_lock){+.+.}-{4:4}, at: hfsplus_file_truncate+0x2a0/0xc10 [ 75.693944][ T5335] [ 75.693944][ T5335] stack backtrace: [ 75.696503][ T5335] CPU: 0 UID: 0 PID: 5335 Comm: syz.0.0 Not tainted syzkaller #0 PREEMPT(full) [ 75.696519][ T5335] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 [ 75.696526][ T5335] Call Trace: [ 75.696535][ T5335] [ 75.696540][ T5335] dump_stack_lvl+0xe8/0x150 [ 75.696559][ T5335] print_circular_bug+0x2e2/0x300 [ 75.696575][ T5335] check_noncircular+0x12e/0x150 [ 75.696591][ T5335] __lock_acquire+0x15a6/0x2cf0 [ 75.696603][ T5335] ? _raw_spin_unlock_irqrestore+0x30/0x80 [ 75.696619][ T5335] ? lockdep_hardirqs_on+0x7b/0x110 [ 75.696630][ T5335] ? _raw_spin_unlock_irqrestore+0x4c/0x80 [ 75.696644][ T5335] ? stack_depot_save_flags+0x3f3/0x810 [ 75.696660][ T5335] ? hfsplus_find_init+0x168/0x2d0 [ 75.696673][ T5335] lock_acquire+0x107/0x340 [ 75.696681][ T5335] ? hfsplus_find_init+0x168/0x2d0 [ 75.696699][ T5335] __mutex_lock+0x187/0x1350 [ 75.696709][ T5335] ? hfsplus_find_init+0x168/0x2d0 [ 75.696726][ T5335] ? hfsplus_find_init+0x168/0x2d0 [ 75.696743][ T5335] ? __pfx___mutex_lock+0x10/0x10 [ 75.696754][ T5335] ? rcu_is_watching+0x15/0xb0 [ 75.696769][ T5335] ? trace_kmalloc+0x1f/0xb0 [ 75.696783][ T5335] ? __kmalloc_noprof+0x43e/0x800 [ 75.696796][ T5335] ? hfsplus_find_init+0x8c/0x2d0 [ 75.696811][ T5335] hfsplus_find_init+0x168/0x2d0 [ 75.696826][ T5335] hfsplus_file_truncate+0x387/0xc10 [ 75.696842][ T5335] ? __pfx_hfsplus_file_truncate+0x10/0x10 [ 75.696854][ T5335] ? unmap_mapping_range+0xde/0x170 [ 75.696865][ T5335] ? __pfx_unmap_mapping_range+0x10/0x10 [ 75.696877][ T5335] ? truncate_setsize+0xcf/0xf0 [ 75.696890][ T5335] hfsplus_setattr+0x1c4/0x270 [ 75.696900][ T5335] ? __pfx_hfsplus_setattr+0x10/0x10 [ 75.696912][ T5335] notify_change+0xc1a/0xf40 [ 75.696929][ T5335] do_truncate+0x1a4/0x220 [ 75.696942][ T5335] ? __pfx_do_truncate+0x10/0x10 [ 75.696955][ T5335] ? apparmor_path_truncate+0x238/0x2d0 [ 75.696972][ T5335] vfs_truncate+0x493/0x520 [ 75.696986][ T5335] ? lockdep_hardirqs_on+0x7b/0x110 [ 75.696995][ T5335] ? __pfx_vfs_truncate+0x10/0x10 [ 75.697008][ T5335] do_sys_truncate+0xdb/0x190 [ 75.697020][ T5335] ? __pfx_do_sys_truncate+0x10/0x10 [ 75.697037][ T5335] __x64_sys_truncate+0x5b/0x70 [ 75.697051][ T5335] do_syscall_64+0xec/0xf80 [ 75.697061][ T5335] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 75.697071][ T5335] ? trace_irq_disable+0x37/0x100 [ 75.697085][ T5335] ? clear_bhb_loop+0x60/0xb0 [ 75.697096][ T5335] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 75.697107][ T5335] RIP: 0033:0x7fb309f8f7c9 [ 75.697120][ T5335] 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 [ 75.697129][ T5335] RSP: 002b:00007fb30adba038 EFLAGS: 00000246 ORIG_RAX: 000000000000004c [ 75.697141][ T5335] RAX: ffffffffffffffda RBX: 00007fb30a1e6090 RCX: 00007fb309f8f7c9 [ 75.697149][ T5335] RDX: 0000000000000000 RSI: 0000000000000e62 RDI: 00002000000001c0 [ 75.697156][ T5335] RBP: 00007fb30a013f91 R08: 0000000000000000 R09: 0000000000000000 [ 75.697162][ T5335] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 [ 75.697168][ T5335] R13: 00007fb30a1e6128 R14: 00007fb30a1e6090 R15: 00007ffe7d060048 [ 75.697181][ T5335] [ 75.837820][ T12] kworker/u4:0: attempt to access beyond end of device [ 75.837820][ T12] loop0: rw=1, sector=206, nr_sectors = 8 limit=64 [ 75.854781][ T12] kworker/u4:0: attempt to access beyond end of device [ 75.854781][ T12] loop0: rw=8388609, sector=288, nr_sectors = 2 limit=64 [ 75.860598][ T12] Buffer I/O error on dev loop0, logical block 144, lost async page write [ 75.865941][ T5334] netlink: 'syz.0.0': attribute type 6 has an invalid length. [ 75.869678][ T12] kworker/u4:0: attempt to access beyond end of device [ 75.869678][ T12] loop0: rw=8388609, sector=292, nr_sectors = 2 limit=64 [ 75.879547][ T12] Buffer I/O error on dev loop0, logical block 146, lost async page write [ 75.884264][ T12] kworker/u4:0: attempt to access beyond end of device [ 75.884264][ T12] loop0: rw=8388609, sector=298, nr_sectors = 2 limit=64 [ 75.891184][ T12] Buffer I/O error on dev loop0, logical block 149, lost async page write [ 75.895443][ T12] Buffer I/O error on dev loop0, logical block 150, lost async page write [ 75.899046][ T12] Buffer I/O error on dev loop0, logical block 152, lost async page write [ 75.903304][ T12] Buffer I/O error on dev loop0, logical block 153, lost async page write