mm2: 00000000b643f24a, map held lock: 0, vma: 00000000ff43f796, ret: -14, __get_user_pages mm: 00000000b643f24a, vma: 00000000ff43f796, mmap lock held: 0, locked: 1, ret: -14, mm addr is valid: 1, __mm_populate ===================================== WARNING: bad unlock balance detected! 6.14.0-rc4-syzkaller-ge056da87c780-dirty #0 Not tainted ------------------------------------- syz.0.16/7207 is trying to release lock (&mm->mmap_lock) at: [] mmap_read_unlock include/linux/mmap_lock.h:217 [inline] [] __mm_populate+0x4e0/0x590 mm/gup.c:2055 but there are no more locks to release! other info that might help us debug this: no locks held by syz.0.16/7207. stack backtrace: CPU: 1 UID: 0 PID: 7207 Comm: syz.0.16 Not tainted 6.14.0-rc4-syzkaller-ge056da87c780-dirty #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024 Call trace: show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:466 (C) __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0xe4/0x150 lib/dump_stack.c:120 dump_stack+0x1c/0x28 lib/dump_stack.c:129 print_unlock_imbalance_bug+0x254/0x2ac kernel/locking/lockdep.c:5289 __lock_release kernel/locking/lockdep.c:5518 [inline] lock_release+0x410/0x9e4 kernel/locking/lockdep.c:5872 up_read+0x24/0x3c kernel/locking/rwsem.c:1619 mmap_read_unlock include/linux/mmap_lock.h:217 [inline] __mm_populate+0x4e0/0x590 mm/gup.c:2055 mm_populate include/linux/mm.h:3386 [inline] vm_mmap_pgoff+0x304/0x3c4 mm/util.c:580 ksys_mmap_pgoff+0x3a4/0x5c8 mm/mmap.c:607 __do_sys_mmap arch/arm64/kernel/sys.c:28 [inline] __se_sys_mmap arch/arm64/kernel/sys.c:21 [inline] __arm64_sys_mmap+0xf8/0x110 arch/arm64/kernel/sys.c:21 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49 el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151 el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744 el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600 ------------[ cut here ]------------ DEBUG_RWSEMS_WARN_ON(tmp < 0): count = 0xffffffffffffff00, magic = 0xffff0000d9a82be0, owner = 0x1, curr 0xffff0000ca89bd00, list empty WARNING: CPU: 1 PID: 7207 at kernel/locking/rwsem.c:1346 __up_read+0x3bc/0x5f8 kernel/locking/rwsem.c:1346 Modules linked in: CPU: 1 UID: 0 PID: 7207 Comm: syz.0.16 Not tainted 6.14.0-rc4-syzkaller-ge056da87c780-dirty #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024 pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : __up_read+0x3bc/0x5f8 kernel/locking/rwsem.c:1346 lr : __up_read+0x3bc/0x5f8 kernel/locking/rwsem.c:1346 sp : ffff80009d6379c0 x29: ffff80009d637a40 x28: 1ffff00011f780cb x27: ffff80008fbc0000 x26: dfff800000000000 x25: ffffffffffffff00 x24: ffff0000d9a82c38 x23: ffff0000d9a82be0 x22: ffffffffffffff00 x21: 0000000000000001 x20: ffff0000ca89bd00 x19: ffff0000d9a82be0 x18: ffff80009d637288 x17: 0000000000000000 x16: ffff80008b7c56dc x15: 0000000000000001 x14: 1ffff00011f8fe00 x13: ffff80009d638000 x12: ffff80009d637490 x11: 0000000000000003 x10: 0000000000ff0100 x9 : ab50c55cae2af500 x8 : ab50c55cae2af500 x7 : 205b5d3439343135 x6 : ffff8000804a97f4 x5 : 0000000000000000 x4 : 0000000000000001 x3 : 0000000000000000 x2 : ffff0000ca89bd00 x1 : 0000000000000001 x0 : 0000000000000000 Call trace: __up_read+0x3bc/0x5f8 kernel/locking/rwsem.c:1346 (P) up_read+0x2c/0x3c kernel/locking/rwsem.c:1620 mmap_read_unlock include/linux/mmap_lock.h:217 [inline] __mm_populate+0x4e0/0x590 mm/gup.c:2055 mm_populate include/linux/mm.h:3386 [inline] vm_mmap_pgoff+0x304/0x3c4 mm/util.c:580 ksys_mmap_pgoff+0x3a4/0x5c8 mm/mmap.c:607 __do_sys_mmap arch/arm64/kernel/sys.c:28 [inline] __se_sys_mmap arch/arm64/kernel/sys.c:21 [inline] __arm64_sys_mmap+0xf8/0x110 arch/arm64/kernel/sys.c:21 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49 el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151 el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744 el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600 irq event stamp: 73577 hardirqs last enabled at (73577): [] raw_spin_rq_unlock_irq kernel/sched/sched.h:1533 [inline] hardirqs last enabled at (73577): [] finish_lock_switch+0xbc/0x1e4 kernel/sched/core.c:5132 hardirqs last disabled at (73576): [] __schedule+0x2bc/0x257c kernel/sched/core.c:6668 softirqs last enabled at (73528): [] softirq_handle_end kernel/softirq.c:407 [inline] softirqs last enabled at (73528): [] handle_softirqs+0xb44/0xd34 kernel/softirq.c:589 softirqs last disabled at (73505): [] __do_softirq+0x14/0x20 kernel/softirq.c:595 ---[ end trace 0000000000000000 ]---