syzbot


WARNING in __mark_chain_precision (2)

Status: fixed on 2019/10/09 10:54
Subsystems: bpf
[Documentation on labels]
Reported-by: syzbot+c8d66267fd2b5955287e@syzkaller.appspotmail.com
Fix commit: 2339cd6cd0b5 bpf: fix precision tracking of stack slots
First crash: 1730d, last: 1710d
Cause bisection: introduced by (bisect log) :
commit e786741ff1b52769b044b7f4407f39cd13ee5d2d
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date: Thu Jul 11 22:36:02 2019 +0000

  Merge tag 'staging-5.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging

Crash: general protection fault in send_hsr_supervision_frame (log)
Repro: C syz .config
  
Discussions (2)
Title Replies (including bot) Last reply
[PATCH bpf] bpf: fix precision tracking of stack slots 2 (2) 2019/09/05 13:15
WARNING in __mark_chain_precision (2) 1 (3) 2019/09/03 00:40
Similar bugs (3)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream WARNING in __mark_chain_precision (4) bpf C 8 31d 51d 24/26 upstream: reported C repro on 2024/04/01 16:51
upstream WARNING in __mark_chain_precision (3) bpf C done 19 143d 164d 26/26 fixed on 2024/01/31 06:43
upstream WARNING in __mark_chain_precision C done 105 1744d 1780d 12/26 fixed on 2019/08/14 02:14

Sample crash report:
------------[ cut here ]------------
verifier backtracking bug
WARNING: CPU: 0 PID: 8795 at kernel/bpf/verifier.c:1782 __mark_chain_precision+0x197a/0x1ea0 kernel/bpf/verifier.c:1782
Kernel panic - not syncing: panic_on_warn set ...
CPU: 0 PID: 8795 Comm: syz-executor439 Not tainted 5.3.0-rc3+ #101
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 __dump_stack lib/dump_stack.c:77 [inline]
 dump_stack+0x172/0x1f0 lib/dump_stack.c:113
 panic+0x2dc/0x755 kernel/panic.c:219
 __warn.cold+0x20/0x4c kernel/panic.c:576
 report_bug+0x263/0x2b0 lib/bug.c:186
 fixup_bug arch/x86/kernel/traps.c:179 [inline]
 fixup_bug arch/x86/kernel/traps.c:174 [inline]
 do_error_trap+0x11b/0x200 arch/x86/kernel/traps.c:272
 do_invalid_op+0x37/0x50 arch/x86/kernel/traps.c:291
 invalid_op+0x23/0x30 arch/x86/entry/entry_64.S:1028
RIP: 0010:__mark_chain_precision+0x197a/0x1ea0 kernel/bpf/verifier.c:1782
Code: 08 31 ff 89 de e8 a6 9e f2 ff 84 db 0f 85 07 ff ff ff e8 59 9d f2 ff 48 c7 c7 a0 a7 91 87 c6 05 3d c6 21 08 01 e8 1e 10 c4 ff <0f> 0b 41 bc f2 ff ff ff e9 e8 fe ff ff 48 8b bd d8 fe ff ff e8 cd
RSP: 0018:ffff88808609f380 EFLAGS: 00010286
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff815c3ba6 RDI: ffffed1010c13e62
RBP: ffff88808609f4d0 R08: ffff8880a97940c0 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000001
R13: ffff8880985b6cc0 R14: ffff88808e538e80 R15: ffff88808609f468
 mark_chain_precision kernel/bpf/verifier.c:1819 [inline]
 check_cond_jmp_op+0xcd8/0x3c30 kernel/bpf/verifier.c:5841
 do_check+0x63cd/0x8a30 kernel/bpf/verifier.c:7783
 bpf_check+0x6fff/0x99b2 kernel/bpf/verifier.c:9297
 bpf_prog_load+0xe68/0x1670 kernel/bpf/syscall.c:1709
 __do_sys_bpf+0xa44/0x3350 kernel/bpf/syscall.c:2860
 __se_sys_bpf kernel/bpf/syscall.c:2819 [inline]
 __x64_sys_bpf+0x73/0xb0 kernel/bpf/syscall.c:2819
 do_syscall_64+0xfd/0x6a0 arch/x86/entry/common.c:296
 entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x4402a9
Code: 18 89 d0 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 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 0f 83 fb 13 fc ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007ffc52f10618 EFLAGS: 00000246 ORIG_RAX: 0000000000000141
RAX: ffffffffffffffda RBX: 00000000004002c8 RCX: 00000000004402a9
RDX: 0000000000000048 RSI: 0000000020000200 RDI: 0000000000000005
RBP: 00000000006ca018 R08: 0000000000000000 R09: 0000000000000000
R10: 00000000ffffffff R11: 0000000000000246 R12: 0000000000401b30
R13: 0000000000401bc0 R14: 0000000000000000 R15: 0000000000000000
Kernel Offset: disabled
Rebooting in 86400 seconds..

Crashes (18):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2019/08/28 01:04 bpf-next 47ee6e86e0a3 fd37b39e .config console log report syz C ci-upstream-bpf-next-kasan-gce
2019/09/12 16:51 upstream ad32b4800c2b 0b7672ee .config console log report ci-upstream-kasan-gce-smack-root
2019/09/11 08:35 upstream 3120b9a6a3f7 a60cb4cd .config console log report ci-upstream-kasan-gce-root
2019/09/11 08:30 upstream 3120b9a6a3f7 a60cb4cd .config console log report ci-upstream-kasan-gce-selinux-root
2019/09/08 23:28 upstream 950b07c14e8c a60cb4cd .config console log report ci-upstream-kasan-gce-selinux-root
2019/09/08 23:28 upstream 950b07c14e8c a60cb4cd .config console log report ci-upstream-kasan-gce-smack-root
2019/09/08 23:27 upstream 950b07c14e8c a60cb4cd .config console log report ci-upstream-kasan-gce-root
2019/09/07 22:52 upstream 1e3778cb223e a60cb4cd .config console log report ci-upstream-kasan-gce-selinux-root
2019/09/05 21:58 upstream 3b47fd5ca9ea 040fda58 .config console log report ci-upstream-kasan-gce-root
2019/09/05 21:55 upstream 3b47fd5ca9ea 040fda58 .config console log report ci-upstream-kasan-gce-selinux-root
2019/09/16 21:33 bpf-next af58e7ee6a8d cb936299 .config console log report ci-upstream-bpf-next-kasan-gce
2019/09/12 08:09 bpf-next a2c11b034142 f4e53c10 .config console log report ci-upstream-bpf-next-kasan-gce
2019/09/09 07:07 bpf-next a2c11b034142 a60cb4cd .config console log report ci-upstream-bpf-next-kasan-gce
2019/09/08 23:28 bpf-next a2c11b034142 a60cb4cd .config console log report ci-upstream-bpf-next-kasan-gce
2019/09/08 23:28 net-next-old 6703a605b5ab a60cb4cd .config console log report ci-upstream-net-kasan-gce
2019/09/04 19:01 bpf-next 110509df4540 040fda58 .config console log report ci-upstream-bpf-next-kasan-gce
2019/08/28 00:41 bpf-next 47ee6e86e0a3 fd37b39e .config console log report ci-upstream-bpf-next-kasan-gce
2019/09/08 23:27 linux-next 6d028043b55e a60cb4cd .config console log report ci-upstream-linux-next-kasan-gce-root
* Struck through repros no longer work on HEAD.