program: syz_mount_image$udf(&(0x7f0000000180), &(0x7f0000000100)='./bus\x00', 0x1014494, &(0x7f00000002c0)={[{@iocharset={'iocharset', 0x3d, 'iso8859-4'}}, {@partition={'partition', 0x3d, 0x6}}, {@gid_forget}, {@session={'session', 0x3d, 0xfe8}}, {@noadinicb}, {@anchor}, {@uid_forget}]}, 0xfe, 0xc24, &(0x7f0000001480)="$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") r0 = open(&(0x7f0000000240)='./file1\x00', 0x145142, 0x0) ftruncate(r0, 0x2007ffc) sendfile(r0, r0, 0x0, 0x800000009) r1 = open(&(0x7f0000000000)='./bus\x00', 0x60142, 0x0) r2 = open(&(0x7f0000000080)='./bus\x00', 0x107382, 0x1d0) ftruncate(r2, 0x2007ffb) sendfile(r1, r2, 0x0, 0x1000000201005) syz_usb_connect$hid(0x0, 0x36, 0x0, 0x0) open(&(0x7f0000000180)='./bus\x00', 0x14937e, 0x111) openat$cgroup_ro(0xffffffffffffff9c, &(0x7f00000001c0)='pids.current\x00', 0x275a, 0x0) [ 85.765164][ T5304] Bluetooth: hci0: command tx timeout [ 85.919343][ T5328] loop0: detected capacity change from 0 to 2048 [ 85.958446][ T5328] UDF-fs: error (device loop0): udf_read_tagged: read failed, block=2362, location=2362 [ 85.987755][ T5328] UDF-fs: error (device loop0): udf_read_tagged: tag checksum failed, block 99: 0x27 != 0x4d [ 86.012893][ T5328] UDF-fs: error (device loop0): udf_read_tagged: tag checksum failed, block 160: 0xd2 != 0xd4 [ 86.019012][ T5328] UDF-fs: INFO Mounting volume 'LinuxUDF', timestamp 2022/11/22 14:59 (1000) [ 86.047250][ T25] audit: type=1800 audit(1769547151.134:2): pid=5328 uid=0 auid=4294967295 ses=4294967295 subj=unconfined op=collect_data cause=failed(directio) comm="syz.0.0" name="file1" dev="loop0" ino=1346 res=0 errno=0 [ 86.237133][ T5328] [ 86.238316][ T5328] ============================================ [ 86.241055][ T5328] WARNING: possible recursive locking detected [ 86.243695][ T5328] syzkaller #0 Not tainted [ 86.245565][ T5328] -------------------------------------------- [ 86.248147][ T5328] syz.0.0/5328 is trying to acquire lock: [ 86.250529][ T5328] ffff8880121e4928 (&sbi->s_alloc_mutex){+.+.}-{4:4}, at: udf_free_blocks+0xaaf/0x1940 [ 86.255207][ T5328] [ 86.255207][ T5328] but task is already holding lock: [ 86.258619][ T5328] ffff8880121e4928 (&sbi->s_alloc_mutex){+.+.}-{4:4}, at: udf_prealloc_blocks+0x8f6/0x1130 [ 86.262726][ T5328] [ 86.262726][ T5328] other info that might help us debug this: [ 86.265960][ T5328] Possible unsafe locking scenario: [ 86.265960][ T5328] [ 86.269086][ T5328] CPU0 [ 86.270480][ T5328] ---- [ 86.271952][ T5328] lock(&sbi->s_alloc_mutex); [ 86.273968][ T5328] lock(&sbi->s_alloc_mutex); [ 86.276098][ T5328] [ 86.276098][ T5328] *** DEADLOCK *** [ 86.276098][ T5328] [ 86.279490][ T5328] May be due to missing lock nesting notation [ 86.279490][ T5328] [ 86.283037][ T5328] 4 locks held by syz.0.0/5328: [ 86.285116][ T5328] #0: ffff8880355e6420 (sb_writers#12){.+.+}-{0:0}, at: direct_splice_actor+0x49/0x160 [ 86.289341][ T5328] #1: ffff888056090f40 (&sb->s_type->i_mutex_key#24){+.+.}-{4:4}, at: udf_file_write_iter+0x6f/0x6b0 [ 86.293810][ T5328] #2: ffff888056090d70 (&ei->i_data_sem#2){++++}-{4:4}, at: udf_map_block+0x2a4/0x4330 [ 86.297789][ T5328] #3: ffff8880121e4928 (&sbi->s_alloc_mutex){+.+.}-{4:4}, at: udf_prealloc_blocks+0x8f6/0x1130 [ 86.302102][ T5328] [ 86.302102][ T5328] stack backtrace: [ 86.304591][ T5328] CPU: 0 UID: 0 PID: 5328 Comm: syz.0.0 Not tainted syzkaller #0 PREEMPT(full) [ 86.304606][ T5328] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 86.304614][ T5328] Call Trace: [ 86.304621][ T5328] [ 86.304627][ T5328] dump_stack_lvl+0xe8/0x150 [ 86.304725][ T5328] print_deadlock_bug+0x279/0x290 [ 86.304790][ T5328] __lock_acquire+0x253f/0x2cf0 [ 86.304807][ T5328] ? __pfx___schedule+0x10/0x10 [ 86.304927][ T5328] ? __queue_work+0x1a1/0xf90 [ 86.304955][ T5328] ? __lock_acquire+0x6b5/0x2cf0 [ 86.304970][ T5328] ? udf_free_blocks+0xaaf/0x1940 [ 86.304983][ T5328] lock_acquire+0x106/0x330 [ 86.304998][ T5328] ? udf_free_blocks+0xaaf/0x1940 [ 86.305012][ T5328] __mutex_lock+0x19f/0x1300 [ 86.305023][ T5328] ? udf_free_blocks+0xaaf/0x1940 [ 86.305036][ T5328] ? __lock_acquire+0x6b5/0x2cf0 [ 86.305069][ T5328] ? udf_free_blocks+0xaaf/0x1940 [ 86.305081][ T5328] ? _raw_spin_unlock_irqrestore+0x30/0x80 [ 86.305097][ T5328] ? __pfx___mutex_lock+0x10/0x10 [ 86.305108][ T5328] ? folio_mark_accessed+0x442/0x8c0 [ 86.305138][ T5328] ? fs_reclaim_acquire+0x7c/0x100 [ 86.305167][ T5328] ? fs_reclaim_acquire+0x7c/0x100 [ 86.305184][ T5328] udf_free_blocks+0xaaf/0x1940 [ 86.305198][ T5328] ? bdev_getblk+0x582/0x6e0 [ 86.305212][ T5328] ? udf_get_fileshortad+0x6e/0x1b0 [ 86.305223][ T5328] ? udf_current_aext+0x698/0xb30 [ 86.305238][ T5328] ? __pfx_udf_free_blocks+0x10/0x10 [ 86.305251][ T5328] ? udf_next_aext+0x447/0x530 [ 86.305270][ T5328] udf_delete_aext+0x4fb/0xbd0 [ 86.305286][ T5328] ? __pfx_udf_delete_aext+0x10/0x10 [ 86.305297][ T5328] ? udf_next_aext+0x44e/0x530 [ 86.305308][ T5328] udf_prealloc_blocks+0xbd3/0x1130 [ 86.305317][ T5328] ? bdev_getblk+0x582/0x6e0 [ 86.305326][ T5328] ? __pfx_udf_prealloc_blocks+0x10/0x10 [ 86.305336][ T5328] ? udf_map_block+0x15ca/0x4330 [ 86.305346][ T5328] udf_map_block+0x1e8a/0x4330 [ 86.305359][ T5328] ? __pfx_udf_map_block+0x10/0x10 [ 86.305374][ T5328] ? do_raw_spin_unlock+0x4d/0x210 [ 86.305383][ T5328] __udf_get_block+0x52/0x250 [ 86.305393][ T5328] __block_write_begin_int+0x6c6/0x1910 [ 86.305404][ T5328] ? __pfx_udf_get_block+0x10/0x10 [ 86.305416][ T5328] ? __pfx___block_write_begin_int+0x10/0x10 [ 86.305430][ T5328] ? __pfx_udf_get_block+0x10/0x10 [ 86.305443][ T5328] block_write_begin+0x8d/0x120 [ 86.305456][ T5328] ? udf_write_begin+0x92/0x270 [ 86.305469][ T5328] udf_write_begin+0x118/0x270 [ 86.305484][ T5328] generic_perform_write+0x2e2/0x8f0 [ 86.305498][ T5328] ? __pfx_generic_perform_write+0x10/0x10 [ 86.305510][ T5328] ? generic_file_direct_write+0x385/0x3e0 [ 86.305523][ T5328] __generic_file_write_iter+0x1ae/0x230 [ 86.305534][ T5328] udf_file_write_iter+0x2ca/0x6b0 [ 86.305549][ T5328] iter_file_splice_write+0x99b/0x1100 [ 86.305571][ T5328] ? __pfx_iter_file_splice_write+0x10/0x10 [ 86.305590][ T5328] ? __pfx_iter_file_splice_write+0x10/0x10 [ 86.305606][ T5328] direct_splice_actor+0x101/0x160 [ 86.305618][ T5328] splice_direct_to_actor+0x53a/0xc70 [ 86.305637][ T5328] ? __pfx_direct_splice_actor+0x10/0x10 [ 86.305646][ T5328] ? __pfx_splice_direct_to_actor+0x10/0x10 [ 86.305664][ T5328] do_splice_direct+0x195/0x290 [ 86.305670][ T5328] ? __pfx_do_splice_direct+0x10/0x10 [ 86.305681][ T5328] ? __pfx_direct_file_splice_eof+0x10/0x10 [ 86.305689][ T5328] ? rw_verify_area+0x255/0x4d0 [ 86.305713][ T5328] do_sendfile+0x535/0x7d0 [ 86.305721][ T5328] ? __pfx_do_sendfile+0x10/0x10 [ 86.305728][ T5328] ? __se_sys_futex+0x3a8/0x450 [ 86.305759][ T5328] __se_sys_sendfile64+0x144/0x1a0 [ 86.305775][ T5328] ? __pfx___se_sys_sendfile64+0x10/0x10 [ 86.305793][ T5328] do_syscall_64+0xe2/0xf80 [ 86.305804][ T5328] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 86.305829][ T5328] ? trace_irq_disable+0x37/0x100 [ 86.305853][ T5328] ? clear_bhb_loop+0x60/0xb0 [ 86.305865][ T5328] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 86.305877][ T5328] RIP: 0033:0x7fe25259aeb9 [ 86.305889][ 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 [ 86.305899][ T5328] RSP: 002b:00007fe253518028 EFLAGS: 00000246 ORIG_RAX: 0000000000000028 [ 86.305912][ T5328] RAX: ffffffffffffffda RBX: 00007fe252815fa0 RCX: 00007fe25259aeb9 [ 86.305920][ T5328] RDX: 0000000000000000 RSI: 0000000000000004 RDI: 0000000000000004 [ 86.305926][ T5328] RBP: 00007fe252608c1f R08: 0000000000000000 R09: 0000000000000000 [ 86.305933][ T5328] R10: 0000000800000009 R11: 0000000000000246 R12: 0000000000000000 [ 86.305940][ T5328] R13: 00007fe252816038 R14: 00007fe252815fa0 R15: 00007ffcba546808 [ 86.305952][ T5328] [ 87.792674][ T5304] Bluetooth: hci0: command tx timeout [ 89.872200][ T5304] Bluetooth: hci0: command tx timeout [ 91.875350][ T10] cfg80211: failed to load regulatory.db [ 91.951831][ T5304] Bluetooth: hci0: command tx timeout