===================================== WARNING: bad unlock balance detected! syzkaller #0 Not tainted ------------------------------------- syz.0.8060/30977 is trying to release lock (&vma_lock->rw_sema) at: [] hugetlb_vmdelete_list+0x179/0x1c0 fs/hugetlbfs/inode.c:501 but there are no more locks to release! other info that might help us debug this: 3 locks held by syz.0.8060/30977: #0: ffff88807d8da420 (sb_writers#12){.+.+}-{0:0}, at: mnt_want_write+0x41/0x90 fs/namespace.c:508 #1: ffff888034404648 (&sb->s_type->i_mutex_key#20){+.+.}-{4:4}, at: inode_lock_killable include/linux/fs.h:985 [inline] #1: ffff888034404648 (&sb->s_type->i_mutex_key#20){+.+.}-{4:4}, at: do_truncate+0x171/0x220 fs/open.c:63 #2: ffff888034404918 (&hugetlbfs_i_mmap_rwsem_key){+.+.}-{4:4}, at: i_mmap_lock_write include/linux/fs.h:548 [inline] #2: ffff888034404918 (&hugetlbfs_i_mmap_rwsem_key){+.+.}-{4:4}, at: hugetlb_vmtruncate fs/hugetlbfs/inode.c:639 [inline] #2: ffff888034404918 (&hugetlbfs_i_mmap_rwsem_key){+.+.}-{4:4}, at: hugetlbfs_setattr+0x489/0x6d0 fs/hugetlbfs/inode.c:879 stack backtrace: CPU: 1 UID: 0 PID: 30977 Comm: syz.0.8060 Not tainted syzkaller #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/18/2025 Call Trace: dump_stack_lvl+0x189/0x250 lib/dump_stack.c:120 print_unlock_imbalance_bug+0xdc/0xf0 kernel/locking/lockdep.c:5298 __lock_release kernel/locking/lockdep.c:5537 [inline] lock_release+0x269/0x3e0 kernel/locking/lockdep.c:5889 up_write+0x2d/0x420 kernel/locking/rwsem.c:1642 hugetlb_vmdelete_list+0x179/0x1c0 fs/hugetlbfs/inode.c:501 hugetlb_vmtruncate fs/hugetlbfs/inode.c:641 [inline] hugetlbfs_setattr+0x4d1/0x6d0 fs/hugetlbfs/inode.c:879 notify_change+0xc1a/0xf40 fs/attr.c:546 do_truncate+0x1a4/0x220 fs/open.c:68 handle_truncate fs/namei.c:3516 [inline] do_open fs/namei.c:3899 [inline] path_openat+0x306c/0x3830 fs/namei.c:4054 do_filp_open+0x1fa/0x410 fs/namei.c:4081 do_sys_openat2+0x121/0x1c0 fs/open.c:1435 do_sys_open fs/open.c:1450 [inline] __do_sys_open fs/open.c:1458 [inline] __se_sys_open fs/open.c:1454 [inline] __x64_sys_open+0x11e/0x150 fs/open.c:1454 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xfa/0xfa0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7fdea5b8eec9 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 RSP: 002b:00007fdea6945038 EFLAGS: 00000246 ORIG_RAX: 0000000000000002 RAX: ffffffffffffffda RBX: 00007fdea5de5fa0 RCX: 00007fdea5b8eec9 RDX: 0000000000000100 RSI: 000000000014927e RDI: 0000200000000340 RBP: 00007fdea5c11f91 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007fdea5de6038 R14: 00007fdea5de5fa0 R15: 00007ffe42e704f8 ------------[ cut here ]------------ DEBUG_RWSEMS_WARN_ON((rwsem_owner(sem) != current) && !rwsem_test_oflags(sem, RWSEM_NONSPINNABLE)): count = 0x0, magic = 0xffff8880295a5408, owner = 0x1, curr 0xffff8880260d9e40, list empty WARNING: kernel/locking/rwsem.c:1381 at __up_write kernel/locking/rwsem.c:1380 [inline], CPU#1: syz.0.8060/30977 WARNING: kernel/locking/rwsem.c:1381 at up_write+0x3a2/0x420 kernel/locking/rwsem.c:1643, CPU#1: syz.0.8060/30977 Modules linked in: CPU: 1 UID: 0 PID: 30977 Comm: syz.0.8060 Not tainted syzkaller #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/18/2025 RIP: 0010:__up_write kernel/locking/rwsem.c:1380 [inline] RIP: 0010:up_write+0x3a2/0x420 kernel/locking/rwsem.c:1643 Code: d0 48 c7 c7 00 f0 aa 8b 48 c7 c6 20 f2 aa 8b 48 8b 14 24 4c 89 f1 4d 89 e0 4c 8b 4c 24 08 41 52 e8 b3 39 e6 ff 48 83 c4 08 90 <0f> 0b 90 90 e9 6d fd ff ff 48 c7 c1 74 0b e5 8f 80 e1 07 80 c1 03 RSP: 0018:ffffc900051076c8 EFLAGS: 00010282 RAX: b37f99c54516e500 RBX: ffff8880295a5408 RCX: ffff8880260d9e40 RDX: 0000000000000000 RSI: 0000000000000001 RDI: 0000000000000002 RBP: dffffc0000000000 R08: ffffc900051073e7 R09: 1ffff92000a20e7c R10: dffffc0000000000 R11: fffff52000a20e7d R12: 0000000000000001 R13: ffff8880295a5460 R14: ffff8880295a5408 R15: 1ffff110052b4a82 FS: 00007fdea69456c0(0000) GS:ffff8881258a2000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007fdea51fed58 CR3: 00000000779ba000 CR4: 00000000003526f0 Call Trace: hugetlb_vmdelete_list+0x179/0x1c0 fs/hugetlbfs/inode.c:501 hugetlb_vmtruncate fs/hugetlbfs/inode.c:641 [inline] hugetlbfs_setattr+0x4d1/0x6d0 fs/hugetlbfs/inode.c:879 notify_change+0xc1a/0xf40 fs/attr.c:546 do_truncate+0x1a4/0x220 fs/open.c:68 handle_truncate fs/namei.c:3516 [inline] do_open fs/namei.c:3899 [inline] path_openat+0x306c/0x3830 fs/namei.c:4054 do_filp_open+0x1fa/0x410 fs/namei.c:4081 do_sys_openat2+0x121/0x1c0 fs/open.c:1435 do_sys_open fs/open.c:1450 [inline] __do_sys_open fs/open.c:1458 [inline] __se_sys_open fs/open.c:1454 [inline] __x64_sys_open+0x11e/0x150 fs/open.c:1454 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xfa/0xfa0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7fdea5b8eec9 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 RSP: 002b:00007fdea6945038 EFLAGS: 00000246 ORIG_RAX: 0000000000000002 RAX: ffffffffffffffda RBX: 00007fdea5de5fa0 RCX: 00007fdea5b8eec9 RDX: 0000000000000100 RSI: 000000000014927e RDI: 0000200000000340 RBP: 00007fdea5c11f91 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007fdea5de6038 R14: 00007fdea5de5fa0 R15: 00007ffe42e704f8