program: bpf$MAP_CREATE_RINGBUF(0x0, &(0x7f0000000080)={0x1b, 0x0, 0x0, 0x26d, 0x0, 0xffffffffffffffff, 0x6, '\x00', 0x0, 0xffffffffffffffff, 0x5, 0x5}, 0x50) bpf$BPF_MAP_GET_FD_BY_ID(0xe, &(0x7f0000000100)={0x0, 0x3ff, 0x8}, 0xc) syz_mount_image$udf(&(0x7f0000000180), &(0x7f0000000100)='./bus\x00', 0x1014494, &(0x7f00000002c0), 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', 0x185102, 0x0) ftruncate(r2, 0x2007ffb) sendfile(r1, r2, 0x0, 0x1000000201005) r3 = syz_open_dev$loop(&(0x7f0000000140), 0x0, 0x0) ioctl$LOOP_SET_BLOCK_SIZE(r3, 0x4c09, 0x8000) ioctl$SCSI_IOCTL_SEND_COMMAND(r1, 0x1, 0x0) r4 = socket$inet_sctp(0x2, 0x5, 0x84) bind$inet(r4, &(0x7f0000000080)={0x2, 0x4e22, @empty}, 0x10) openat$ppp(0xffffffffffffff9c, &(0x7f0000000000), 0x0, 0x0) r5 = syz_open_dev$loop(&(0x7f0000000640), 0x0, 0x22400) r6 = openat(0xffffffffffffff9c, &(0x7f00000001c0)='./file1\x00', 0x6042, 0x144) sendfile(r6, r5, 0x0, 0x80000002) ioctl$sock_ipv6_tunnel_SIOCCHGTUNNEL(0xffffffffffffffff, 0x89f3, &(0x7f0000000480)={'syztnl1\x00', &(0x7f0000000280)={'syztnl1\x00', 0x0, 0x2f, 0x8, 0x9, 0xd, 0x65, @private1, @private1={0xfc, 0x1, '\x00', 0x1}, 0x20, 0x7, 0x8, 0x3}}) bpf$BPF_BTF_GET_FD_BY_ID(0x13, &(0x7f00000004c0)=0xffffffffffffffff, 0x4) r7 = openat(0xffffffffffffff9c, &(0x7f0000000240)='.\x00', 0x0, 0x0) ioctl$FS_IOC_REMOVE_ENCRYPTION_KEY(r7, 0xc0185879, &(0x7f00000001c0)={@desc={0x1, 0x0, @auto="964a62a2042db162"}}) r8 = open(&(0x7f0000000180)='./bus\x00', 0x14927e, 0x0) fallocate(r8, 0x0, 0x0, 0x1000f4) openat$ipvs(0xffffffffffffff9c, &(0x7f0000000580)='/proc/sys/net/ipv4/vs/drop_packet\x00', 0x2, 0x0) bpf$BPF_MAP_CONST_STR_FREEZE(0x16, &(0x7f00000005c0)={0x1}, 0x4) sendmsg$NFT_BATCH(0xffffffffffffffff, &(0x7f0000000840)={0x0, 0x0, &(0x7f0000000000)={0x0, 0x64}}, 0x0) r9 = socket$inet6(0xa, 0x800000000000002, 0x0) setsockopt$SO_TIMESTAMPING(r9, 0x1, 0x41, &(0x7f0000000200)=0x632a, 0x4) [ 73.894832][ T4685] Bluetooth: hci0: command tx timeout [ 74.015450][ T5339] loop0: detected capacity change from 0 to 2048 [ 74.059058][ T5339] UDF-fs: error (device loop0): udf_read_tagged: tag checksum failed, block 99: 0x27 != 0x4d [ 74.075268][ T5339] UDF-fs: error (device loop0): udf_read_tagged: tag checksum failed, block 160: 0xd2 != 0xd4 [ 74.101346][ T5339] UDF-fs: INFO Mounting volume 'LinuxUDF', timestamp 2022/11/22 14:59 (1000) [ 74.138979][ T26] audit: type=1800 audit(1767544167.103:2): pid=5339 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 [ 74.265697][ T26] audit: type=1800 audit(1767544167.243:3): pid=5341 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 [ 74.460382][ T5341] [ 74.461429][ T5341] ============================================ [ 74.464039][ T5341] WARNING: possible recursive locking detected [ 74.466688][ T5341] syzkaller #0 Not tainted [ 74.468931][ T5341] -------------------------------------------- [ 74.471674][ T5341] syz.0.0/5341 is trying to acquire lock: [ 74.474223][ T5341] ffff888044965528 (&sbi->s_alloc_mutex){+.+.}-{4:4}, at: udf_free_blocks+0xa8f/0x18e0 [ 74.478462][ T5341] [ 74.478462][ T5341] but task is already holding lock: [ 74.481610][ T5341] ffff888044965528 (&sbi->s_alloc_mutex){+.+.}-{4:4}, at: udf_prealloc_blocks+0x8d0/0x10f0 [ 74.485574][ T5341] [ 74.485574][ T5341] other info that might help us debug this: [ 74.488682][ T5341] Possible unsafe locking scenario: [ 74.488682][ T5341] [ 74.491651][ T5341] CPU0 [ 74.493018][ T5341] ---- [ 74.494394][ T5341] lock(&sbi->s_alloc_mutex); [ 74.496403][ T5341] lock(&sbi->s_alloc_mutex); [ 74.498464][ T5341] [ 74.498464][ T5341] *** DEADLOCK *** [ 74.498464][ T5341] [ 74.502025][ T5341] May be due to missing lock nesting notation [ 74.502025][ T5341] [ 74.505400][ T5341] 4 locks held by syz.0.0/5341: [ 74.507384][ T5341] #0: ffff888044356420 (sb_writers#12){.+.+}-{0:0}, at: direct_splice_actor+0x49/0x160 [ 74.511089][ T5341] #1: ffff8880472a4f40 (&sb->s_type->i_mutex_key#24){+.+.}-{4:4}, at: udf_file_write_iter+0x6e/0x6c0 [ 74.515426][ T5341] #2: ffff8880472a4d70 (&ei->i_data_sem#2){++++}-{4:4}, at: udf_map_block+0x283/0x45f0 [ 74.519091][ T5341] #3: ffff888044965528 (&sbi->s_alloc_mutex){+.+.}-{4:4}, at: udf_prealloc_blocks+0x8d0/0x10f0 [ 74.523101][ T5341] [ 74.523101][ T5341] stack backtrace: [ 74.525418][ T5341] CPU: 0 UID: 0 PID: 5341 Comm: syz.0.0 Not tainted syzkaller #0 PREEMPT(full) [ 74.525434][ T5341] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 [ 74.525442][ T5341] Call Trace: [ 74.525449][ T5341] [ 74.525454][ T5341] dump_stack_lvl+0xe8/0x150 [ 74.525471][ T5341] print_deadlock_bug+0x279/0x290 [ 74.525487][ T5341] __lock_acquire+0x2540/0x2cf0 [ 74.525502][ T5341] ? udf_free_blocks+0xa8f/0x18e0 [ 74.525512][ T5341] lock_acquire+0x107/0x340 [ 74.525521][ T5341] ? udf_free_blocks+0xa8f/0x18e0 [ 74.525532][ T5341] __mutex_lock+0x187/0x1350 [ 74.525581][ T5341] ? udf_free_blocks+0xa8f/0x18e0 [ 74.525592][ T5341] ? __lock_acquire+0x6b6/0x2cf0 [ 74.525604][ T5341] ? udf_free_blocks+0xa8f/0x18e0 [ 74.525613][ T5341] ? __pfx___mutex_lock+0x10/0x10 [ 74.525623][ T5341] ? folio_mark_accessed+0x42c/0x8b0 [ 74.525638][ T5341] ? fs_reclaim_acquire+0x7d/0x100 [ 74.525653][ T5341] ? fs_reclaim_acquire+0x7d/0x100 [ 74.525668][ T5341] udf_free_blocks+0xa8f/0x18e0 [ 74.525680][ T5341] ? bdev_getblk+0x583/0x6e0 [ 74.525693][ T5341] ? udf_get_fileshortad+0x6e/0x1b0 [ 74.525703][ T5341] ? udf_current_aext+0x698/0xb30 [ 74.525716][ T5341] ? __pfx_udf_free_blocks+0x10/0x10 [ 74.525728][ T5341] ? udf_next_aext+0x447/0x540 [ 74.525743][ T5341] udf_delete_aext+0x4df/0xbc0 [ 74.525757][ T5341] ? __pfx_udf_delete_aext+0x10/0x10 [ 74.525768][ T5341] ? udf_next_aext+0x44e/0x540 [ 74.525781][ T5341] udf_prealloc_blocks+0xbb4/0x10f0 [ 74.525791][ T5341] ? bdev_getblk+0x583/0x6e0 [ 74.525805][ T5341] ? __pfx_udf_new_block+0x10/0x10 [ 74.525816][ T5341] ? __pfx_udf_prealloc_blocks+0x10/0x10 [ 74.525828][ T5341] ? udf_map_block+0x1662/0x45f0 [ 74.525840][ T5341] udf_map_block+0x1f70/0x45f0 [ 74.525854][ T5341] ? __pfx_udf_map_block+0x10/0x10 [ 74.525872][ T5341] ? do_raw_spin_unlock+0x4d/0x240 [ 74.525885][ T5341] __udf_get_block+0x52/0x250 [ 74.525897][ T5341] __block_write_begin_int+0x6b5/0x1900 [ 74.525914][ T5341] ? __pfx_udf_get_block+0x10/0x10 [ 74.525925][ T5341] ? __pfx___block_write_begin_int+0x10/0x10 [ 74.525941][ T5341] ? __pfx_udf_get_block+0x10/0x10 [ 74.525951][ T5341] block_write_begin+0x8d/0x120 [ 74.525964][ T5341] ? udf_write_begin+0x92/0x270 [ 74.525975][ T5341] udf_write_begin+0x118/0x270 [ 74.525996][ T5341] generic_perform_write+0x2c5/0x900 [ 74.526009][ T5341] ? __pfx_generic_perform_write+0x10/0x10 [ 74.526021][ T5341] ? generic_file_direct_write+0x385/0x3e0 [ 74.526033][ T5341] __generic_file_write_iter+0x1ae/0x230 [ 74.526043][ T5341] udf_file_write_iter+0x2d5/0x6c0 [ 74.526054][ T5341] iter_file_splice_write+0x972/0x10b0 [ 74.526070][ T5341] ? __pfx_iter_file_splice_write+0x10/0x10 [ 74.526085][ T5341] ? __pfx_iter_file_splice_write+0x10/0x10 [ 74.526095][ T5341] direct_splice_actor+0x101/0x160 [ 74.526107][ T5341] splice_direct_to_actor+0x5a8/0xcc0 [ 74.526121][ T5341] ? __pfx_direct_splice_actor+0x10/0x10 [ 74.526132][ T5341] ? __pfx_splice_direct_to_actor+0x10/0x10 [ 74.526145][ T5341] do_splice_direct+0x181/0x270 [ 74.526155][ T5341] ? __pfx_do_splice_direct+0x10/0x10 [ 74.526165][ T5341] ? common_file_perm+0x1b5/0x220 [ 74.526176][ T5341] ? __pfx_direct_file_splice_eof+0x10/0x10 [ 74.526189][ T5341] ? rw_verify_area+0x255/0x4d0 [ 74.526202][ T5341] do_sendfile+0x4da/0x7e0 [ 74.526212][ T5341] ? lockdep_hardirqs_on+0x7b/0x110 [ 74.526222][ T5341] ? __pfx_do_sendfile+0x10/0x10 [ 74.526233][ T5341] ? __se_sys_futex+0x36f/0x400 [ 74.526247][ T5341] __se_sys_sendfile64+0x13e/0x190 [ 74.526259][ T5341] ? __pfx___se_sys_sendfile64+0x10/0x10 [ 74.526269][ T5341] do_syscall_64+0xec/0xf80 [ 74.526281][ T5341] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 74.526290][ T5341] ? trace_irq_disable+0x37/0x100 [ 74.526303][ T5341] ? clear_bhb_loop+0x60/0xb0 [ 74.526315][ T5341] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 74.526326][ T5341] RIP: 0033:0x7f423918f7c9 [ 74.526338][ T5341] 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 [ 74.526347][ T5341] RSP: 002b:00007f4239f97038 EFLAGS: 00000246 ORIG_RAX: 0000000000000028 [ 74.526358][ T5341] RAX: ffffffffffffffda RBX: 00007f42393e6180 RCX: 00007f423918f7c9 [ 74.526367][ T5341] RDX: 0000000000000000 RSI: 000000000000000a RDI: 000000000000000b [ 74.526373][ T5341] RBP: 00007f4239213f91 R08: 0000000000000000 R09: 0000000000000000 [ 74.526379][ T5341] R10: 0000000080000002 R11: 0000000000000246 R12: 0000000000000000 [ 74.526385][ T5341] R13: 00007f42393e6218 R14: 00007f42393e6180 R15: 00007fff4bdbb778 [ 74.526395][ T5341] [ 75.965093][ T4685] Bluetooth: hci0: command tx timeout [ 78.045406][ T4685] Bluetooth: hci0: command tx timeout [ 80.124757][ T4685] Bluetooth: hci0: command tx timeout