[Android 5.15] BUG: soft lockup in asm_exc_page_fault

10 views
Skip to first unread message

syzbot

unread,
Apr 6, 2024, 3:07:36 PMApr 6
to syzkaller-a...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 993bed180178 Merge "Merge branch 'android13-5.15' into bra..
git tree: android13-5.15-lts
console output: https://syzkaller.appspot.com/x/log.txt?x=1533a699180000
kernel config: https://syzkaller.appspot.com/x/.config?x=49ce29477ba81e8f
dashboard link: https://syzkaller.appspot.com/bug?extid=5a0c21ba7dcd36dcc75b
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=15729e75180000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=11156dd3180000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/803c31a2cd6a/disk-993bed18.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/fb3ff89c92a4/vmlinux-993bed18.xz
kernel image: https://storage.googleapis.com/syzbot-assets/b0859874279b/bzImage-993bed18.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+5a0c21...@syzkaller.appspotmail.com

watchdog: BUG: soft lockup - CPU#0 stuck for 246s! [syz-executor287:731]
Modules linked in:
CPU: 0 PID: 731 Comm: syz-executor287 Not tainted 5.15.148-syzkaller-00718-g993bed180178 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
RIP: 0010:native_safe_halt arch/x86/include/asm/irqflags.h:51 [inline]
RIP: 0010:arch_safe_halt arch/x86/include/asm/irqflags.h:89 [inline]
RIP: 0010:kvm_wait+0x147/0x180 arch/x86/kernel/kvm.c:918
Code: 4c 89 e8 48 c1 e8 03 42 0f b6 04 20 84 c0 44 8b 74 24 1c 75 34 41 0f b6 45 00 44 38 f0 75 10 66 90 0f 00 2d 5b 03 f3 03 fb f4 <e9> 24 ff ff ff fb e9 1e ff ff ff 44 89 e9 80 e1 07 38 c1 7c a3 4c
RSP: 0018:ffffc90000a66320 EFLAGS: 00000246
RAX: 0000000000000003 RBX: 1ffff9200014cc68 RCX: ffffffff8154f88f
RDX: dffffc0000000000 RSI: 0000000000000003 RDI: ffff88810a4284d8
RBP: ffffc90000a663d0 R08: dffffc0000000000 R09: ffffed102148509c
R10: 0000000000000000 R11: dffffc0000000001 R12: dffffc0000000000
R13: ffff88810a4284d8 R14: 0000000000000003 R15: 1ffff9200014cc6c
FS: 0000555556600380(0000) GS:ffff8881f7000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f9cf01bce49 CR3: 000000011c1eb000 CR4: 00000000003506b0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<IRQ>
</IRQ>
<TASK>
pv_wait arch/x86/include/asm/paravirt.h:597 [inline]
pv_wait_head_or_lock kernel/locking/qspinlock_paravirt.h:470 [inline]
__pv_queued_spin_lock_slowpath+0x6bc/0xc40 kernel/locking/qspinlock.c:508
pv_queued_spin_lock_slowpath arch/x86/include/asm/paravirt.h:585 [inline]
queued_spin_lock_slowpath arch/x86/include/asm/qspinlock.h:51 [inline]
queued_spin_lock include/asm-generic/qspinlock.h:85 [inline]
do_raw_spin_lock include/linux/spinlock.h:187 [inline]
__raw_spin_lock_bh include/linux/spinlock_api_smp.h:136 [inline]
_raw_spin_lock_bh+0x139/0x1b0 kernel/locking/spinlock.c:178
sock_hash_delete_elem+0xb1/0x2f0 net/core/sock_map.c:937
bpf_prog_a8aaa52f2e199321+0x42/0x5bc
bpf_dispatcher_nop_func include/linux/bpf.h:785 [inline]
__bpf_prog_run include/linux/filter.h:625 [inline]
bpf_prog_run include/linux/filter.h:632 [inline]
__bpf_trace_run kernel/trace/bpf_trace.c:1883 [inline]
bpf_trace_run4+0x13f/0x270 kernel/trace/bpf_trace.c:1922
__bpf_trace_mm_page_alloc+0xbf/0xf0 include/trace/events/kmem.h:201
__traceiter_mm_page_alloc+0x3a/0x60 include/trace/events/kmem.h:201
trace_mm_page_alloc include/trace/events/kmem.h:201 [inline]
__alloc_pages+0x3cb/0x8f0 mm/page_alloc.c:5798
__alloc_pages_node include/linux/gfp.h:591 [inline]
alloc_pages_node include/linux/gfp.h:605 [inline]
alloc_pages include/linux/gfp.h:618 [inline]
__stack_depot_save+0x38d/0x470 lib/stackdepot.c:326
stack_depot_save+0xe/0x10 lib/stackdepot.c:383
save_stack+0x104/0x1e0 mm/page_owner.c:140
__set_page_owner+0x28/0x2e0 mm/page_owner.c:200
set_page_owner include/linux/page_owner.h:33 [inline]
post_alloc_hook+0x1a3/0x1b0 mm/page_alloc.c:2604
prep_new_page+0x1b/0x110 mm/page_alloc.c:2610
get_page_from_freelist+0x3550/0x35d0 mm/page_alloc.c:4484
__alloc_pages+0x27e/0x8f0 mm/page_alloc.c:5776
__alloc_pages_node include/linux/gfp.h:591 [inline]
alloc_pages_node include/linux/gfp.h:605 [inline]
alloc_pages include/linux/gfp.h:618 [inline]
__stack_depot_save+0x38d/0x470 lib/stackdepot.c:326
kasan_save_stack mm/kasan/common.c:39 [inline]
kasan_set_track+0x5d/0x70 mm/kasan/common.c:45
kasan_set_free_info+0x23/0x40 mm/kasan/generic.c:370
____kasan_slab_free+0x126/0x160 mm/kasan/common.c:365
__kasan_slab_free+0x11/0x20 mm/kasan/common.c:373
kasan_slab_free include/linux/kasan.h:193 [inline]
slab_free_hook mm/slub.c:1723 [inline]
slab_free_freelist_hook+0xbd/0x190 mm/slub.c:1749
slab_free mm/slub.c:3519 [inline]
kfree+0xc8/0x220 mm/slub.c:4579
sk_psock_free_link include/linux/skmsg.h:420 [inline]
sock_map_del_link net/core/sock_map.c:160 [inline]
sock_map_unref+0x352/0x4d0 net/core/sock_map.c:182
sock_hash_delete_elem+0x274/0x2f0 net/core/sock_map.c:941
bpf_prog_a8aaa52f2e199321+0x42/0x5bc
bpf_dispatcher_nop_func include/linux/bpf.h:785 [inline]
__bpf_prog_run include/linux/filter.h:625 [inline]
bpf_prog_run include/linux/filter.h:632 [inline]
__bpf_trace_run kernel/trace/bpf_trace.c:1883 [inline]
bpf_trace_run4+0x13f/0x270 kernel/trace/bpf_trace.c:1922
__bpf_trace_mm_page_alloc+0xbf/0xf0 include/trace/events/kmem.h:201
__traceiter_mm_page_alloc+0x3a/0x60 include/trace/events/kmem.h:201
trace_mm_page_alloc include/trace/events/kmem.h:201 [inline]
__alloc_pages+0x3cb/0x8f0 mm/page_alloc.c:5798
__alloc_pages_node include/linux/gfp.h:591 [inline]
alloc_pages_node include/linux/gfp.h:605 [inline]
alloc_pages include/linux/gfp.h:618 [inline]
wp_page_copy+0x200/0x1b00 mm/memory.c:3185
do_wp_page+0x6fa/0xb60
handle_pte_fault+0x72e/0x2340 mm/memory.c:4884
do_handle_mm_fault+0x1fed/0x2330 mm/memory.c:5266
handle_mm_fault include/linux/mm.h:1836 [inline]
do_user_addr_fault arch/x86/mm/fault.c:1458 [inline]
handle_page_fault arch/x86/mm/fault.c:1549 [inline]
exc_page_fault+0x3b5/0x830 arch/x86/mm/fault.c:1605
asm_exc_page_fault+0x27/0x30 arch/x86/include/asm/idtentry.h:568
RIP: 0010:__put_user_nocheck_4+0x3/0x11
Code: 00 00 48 39 d9 73 54 0f 01 cb 66 89 01 31 c9 0f 01 ca c3 0f 1f 44 00 00 48 bb fd ef ff ff ff 7f 00 00 48 39 d9 73 34 0f 01 cb <89> 01 31 c9 0f 01 ca c3 66 0f 1f 44 00 00 48 bb f9 ef ff ff ff 7f
RSP: 0018:ffffc90000a67f30 EFLAGS: 00050297
RAX: 00000000000002db RBX: 00007fffffffeffd RCX: 0000555556600650
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: ffffc90000a67f48 R08: ffffffff81496963 R09: ffffed10215234f1
R10: 0000000000000000 R11: dffffc0000000001 R12: 0000000000000000
R13: 0000000000000000 R14: ffff88810a4893c0 R15: 0000000000000000
ret_from_fork+0x8/0x30 arch/x86/entry/entry_64.S:283
RIP: 0033:0x7f9cf01bce73
Code: Unable to access opcode bytes at RIP 0x7f9cf01bce49.
RSP: 002b:00007ffecda44a48 EFLAGS: 00000246 ORIG_RAX: 0000000000000038
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 00007f9cf01bce73
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000001200011
RBP: 0000000000000000 R08: 0000000000000000 R09: 00007ffecda810b0
R10: 0000555556600650 R11: 0000000000000246 R12: 0000000000000001
R13: 00007ffecda44b5c R14: 00007ffecda44b70 R15: 00007ffecda44b60
</TASK>


---
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
Reply all
Reply to author
Forward
0 new messages