Hello,
syzbot found the following issue on:
HEAD commit: f61a392235e0 Merge 5.10.272 into android13-5.10-lts
git tree: android13-5.10-lts
console+strace:
https://syzkaller.appspot.com/x/log.txt?x=153a1369580000
kernel config:
https://syzkaller.appspot.com/x/.config?x=40fa24cc6888ca30
dashboard link:
https://syzkaller.appspot.com/bug?extid=8347ca8355b5e9e8126c
compiler: Debian clang version 22.1.8 (1~deb13u4), Debian LLD 22.1.8
syz repro:
https://syzkaller.appspot.com/x/repro.syz?x=13e8ebdd580000
C reproducer:
https://syzkaller.appspot.com/x/repro.c?x=161c0afd580000
Downloadable assets:
disk image:
https://storage.googleapis.com/syzbot-assets/1067764b73c1/disk-f61a3922.raw.xz
vmlinux:
https://storage.googleapis.com/syzbot-assets/eda1b07ee362/vmlinux-f61a3922.xz
kernel image:
https://storage.googleapis.com/syzbot-assets/109d1701bea2/bzImage-f61a3922.xz
mounted in repro:
https://storage.googleapis.com/syzbot-assets/bf2808ccfaed/mount_0.gz
fsck result: failed (log:
https://syzkaller.appspot.com/x/fsck.log?x=141c0afd580000)
IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by:
syzbot+8347ca...@syzkaller.appspotmail.com
BUG: scheduling while atomic: syz-executor232/331/0x00000002
Modules linked in:
Preemption disabled at:
[<ffffffff81952eb4>] spin_lock include/linux/spinlock.h:355 [inline]
[<ffffffff81952eb4>] zap_pte_range mm/memory.c:1272 [inline]
[<ffffffff81952eb4>] zap_pmd_range mm/memory.c:1435 [inline]
[<ffffffff81952eb4>] zap_pud_range mm/memory.c:1464 [inline]
[<ffffffff81952eb4>] zap_p4d_range mm/memory.c:1485 [inline]
[<ffffffff81952eb4>] unmap_page_range+0xa54/0x2190 mm/memory.c:1506
CPU: 0 PID: 331 Comm: syz-executor232 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/15/2026
Call Trace:
__dump_stack+0x21/0x24 lib/dump_stack.c:77
dump_stack_lvl+0x1a7/0x208 lib/dump_stack.c:118
dump_stack+0x15/0x1c lib/dump_stack.c:135
__schedule_bug+0x183/0x240 kernel/sched/core.c:4545
schedule_debug kernel/sched/core.c:4572 [inline]
__schedule+0xcee/0x13e0 kernel/sched/core.c:4700
schedule+0x13c/0x1d0 kernel/sched/core.c:4884
schedule_preempt_disabled+0x13/0x20 kernel/sched/core.c:4943
__mutex_lock_common kernel/locking/mutex.c:1053 [inline]
__mutex_lock+0x5d4/0xc40 kernel/locking/mutex.c:1117
__mutex_lock_slowpath+0xe/0x10 kernel/locking/mutex.c:1379
mutex_lock+0xdb/0xf0 kernel/locking/mutex.c:299
f2fs_register_inmem_page+0x211/0x470 fs/f2fs/segment.c:202
f2fs_set_data_page_dirty+0x557/0x6e0 fs/f2fs/data.c:3648
set_page_dirty+0x1a2/0x300 mm/page-writeback.c:2608
zap_pte_range mm/memory.c:1308 [inline]
zap_pmd_range mm/memory.c:1435 [inline]
zap_pud_range mm/memory.c:1464 [inline]
zap_p4d_range mm/memory.c:1485 [inline]
unmap_page_range+0x104c/0x2190 mm/memory.c:1506
unmap_single_vma mm/memory.c:1551 [inline]
unmap_vmas+0x25f/0x360 mm/memory.c:1583
exit_mmap+0x309/0x590 mm/mmap.c:3385
__mmput+0x92/0x2d0 kernel/fork.c:1153
mmput+0x4e/0x150 kernel/fork.c:1176
exit_mm kernel/exit.c:546 [inline]
do_exit+0x9d8/0x24e0 kernel/exit.c:866
do_group_exit+0x149/0x310 kernel/exit.c:993
get_signal+0xfb1/0x1300 kernel/signal.c:2806
arch_do_signal_or_restart+0xe7/0x11b0 arch/x86/kernel/signal.c:805
handle_signal_work kernel/entry/common.c:148 [inline]
exit_to_user_mode_loop+0xa2/0xe0 kernel/entry/common.c:172
exit_to_user_mode_prepare+0x76/0xa0 kernel/entry/common.c:202
syscall_exit_to_user_mode+0x1d/0x40 kernel/entry/common.c:277
do_syscall_64+0x3d/0x40 arch/x86/entry/common.c:56
entry_SYSCALL_64_after_hwframe+0x61/0xcb
RIP: 0033:0x7f99c55f2b89
Code: Unable to access opcode bytes at RIP 0x7f99c55f2b5f.
RSP: 002b:00007f99c55a6218 EFLAGS: 00000246 ORIG_RAX: 0000000000000000
RAX: 0000000000ea0000 RBX: 00007f99c569fe58 RCX: 00007f99c55f2b89
RDX: 00000000fffffeb1 RSI: 0000200000005d80 RDI: 0000000000000006
RBP: 00007f99c569fe50 R08: 00007f99c55a66c0 R09: 33203a6b63617473
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f99c5670abc
R13: 0000200000000000 R14: 0000200000005d80 R15: 00000000fffffeb1
------------[ cut here ]------------
DEBUG_LOCKS_WARN_ON(val > preempt_count())
WARNING: CPU: 0 PID: 331 at kernel/sched/core.c:4488 preempt_count_sub+0xa7/0x170 kernel/sched/core.c:4488
Modules linked in:
CPU: 0 PID: 331 Comm: syz-executor232 Tainted: G W syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/15/2026
RIP: 0010:preempt_count_sub+0xa7/0x170 kernel/sched/core.c:4488
Code: e8 03 0f b6 04 18 84 c0 0f 85 8b 00 00 00 83 3d b6 e1 7e 05 00 75 d2 48 c7 c7 80 14 e8 84 48 c7 c6 20 15 e8 84 e8 19 68 35 03 <0f> 0b eb bb e8 50 9d f6 00 85 c0 74 b2 48 c7 c0 c8 b3 c3 86 48 c1
RSP: 0018:ffffc90000de7588 EFLAGS: 00010246
RAX: abaa30aa87836200 RBX: dffffc0000000000 RCX: ffff88810ac0a800
RDX: 0000000000000000 RSI: 0000000080000000 RDI: 0000000000000000
RBP: ffffc90000de7598 R08: ffff8881f7027493 R09: 1ffff1103ee04e92
R10: dffffc0000000000 R11: ffffed103ee04e93 R12: 1ffff920001bcee0
R13: dffffc0000000000 R14: ffff888105bf21f0 R15: 1ffff920001bcf24
FS: 0000000000000000(0000) GS:ffff8881f7000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00005555948ea758 CR3: 0000000104dc1000 CR4: 00000000003506b0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
__raw_spin_unlock include/linux/spinlock_api_smp.h:152 [inline]
_raw_spin_unlock+0x4d/0x70 kernel/locking/spinlock.c:183
spin_unlock include/linux/spinlock.h:395 [inline]
zap_pte_range mm/memory.c:1375 [inline]
zap_pmd_range mm/memory.c:1435 [inline]
zap_pud_range mm/memory.c:1464 [inline]
zap_p4d_range mm/memory.c:1485 [inline]
unmap_page_range+0x1d78/0x2190 mm/memory.c:1506
unmap_single_vma mm/memory.c:1551 [inline]
unmap_vmas+0x25f/0x360 mm/memory.c:1583
exit_mmap+0x309/0x590 mm/mmap.c:3385
__mmput+0x92/0x2d0 kernel/fork.c:1153
mmput+0x4e/0x150 kernel/fork.c:1176
exit_mm kernel/exit.c:546 [inline]
do_exit+0x9d8/0x24e0 kernel/exit.c:866
do_group_exit+0x149/0x310 kernel/exit.c:993
get_signal+0xfb1/0x1300 kernel/signal.c:2806
arch_do_signal_or_restart+0xe7/0x11b0 arch/x86/kernel/signal.c:805
handle_signal_work kernel/entry/common.c:148 [inline]
exit_to_user_mode_loop+0xa2/0xe0 kernel/entry/common.c:172
exit_to_user_mode_prepare+0x76/0xa0 kernel/entry/common.c:202
syscall_exit_to_user_mode+0x1d/0x40 kernel/entry/common.c:277
do_syscall_64+0x3d/0x40 arch/x86/entry/common.c:56
entry_SYSCALL_64_after_hwframe+0x61/0xcb
RIP: 0033:0x7f99c55f2b89
Code: Unable to access opcode bytes at RIP 0x7f99c55f2b5f.
RSP: 002b:00007f99c55a6218 EFLAGS: 00000246 ORIG_RAX: 0000000000000000
RAX: 0000000000ea0000 RBX: 00007f99c569fe58 RCX: 00007f99c55f2b89
RDX: 00000000fffffeb1 RSI: 0000200000005d80 RDI: 0000000000000006
RBP: 00007f99c569fe50 R08: 00007f99c55a66c0 R09: 33203a6b63617473
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f99c5670abc
R13: 0000200000000000 R14: 0000200000005d80 R15: 00000000fffffeb1
---[ end trace 591c191fd5461c00 ]---
---
This report is generated by a bot. It may contain errors.
See
https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at
syzk...@googlegroups.com.
syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.
If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title
If you want syzbot to run the reproducer, reply with:
#syz test: git://repo/address.git branch-or-commit-hash
If you attach or paste a git patch, syzbot will apply it before testing.
If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)
If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report
If you want to undo deduplication, reply with:
#syz undup