------------[ cut here ]------------ verifier bug: REG INVARIANTS VIOLATION (true_reg1): range bounds violation u64=[0xffffdfcd, 0xffffffffffffdfcc] s64=[0x80000000ffffdfcd, 0x7fffffffffffdfcc] u32=[0xffffdfcd, 0xffffdfcc] s32=[0xffffdfcd, 0xffffdfcc] var_off=(0xffffdfcc, 0xffffffff00000000) WARNING: kernel/bpf/verifier.c:2748 at reg_bounds_sanity_check+0x201/0xc30 kernel/bpf/verifier.c:2742, CPU#0: syz.0.0/5337 Modules linked in: CPU: 0 UID: 0 PID: 5337 Comm: syz.0.0 Not tainted syzkaller #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 RIP: 0010:reg_bounds_sanity_check+0x3e6/0xc30 kernel/bpf/verifier.c:2742 Code: 98 00 00 00 4c 8b 8c 24 88 00 00 00 41 ff 34 24 41 57 55 41 55 ff b4 24 f0 00 00 00 ff b4 24 a8 00 00 00 ff b4 24 c0 00 00 00 <67> 48 0f b9 3a 48 83 c4 38 49 bf 00 00 00 00 00 fc ff df 48 8b 84 RSP: 0018:ffffc9000ed06ed0 EFLAGS: 00010246 RAX: dffffc0000000000 RBX: 1ffff1100461cc4a RCX: 00000000ffffdfcd RDX: ffffffff8b71ce20 RSI: ffffffff8b7255a0 RDI: ffffffff8f8634d0 RBP: 00000000ffffdfcc R08: ffffffffffffdfcc R09: 80000000ffffdfcd R10: ffff8880230e6358 R11: 1ffff1100461cc50 R12: ffff8880230e6250 R13: 00000000ffffdfcd R14: 1ffff1100461cc49 R15: 00000000ffffdfcc FS: 00007fbd3ddc06c0(0000) GS:ffff88808d416000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000200000001000 CR3: 0000000023158000 CR4: 0000000000352ef0 Call Trace: reg_set_min_max+0x264/0x340 kernel/bpf/verifier.c:16570 check_cond_jmp_op+0x19c6/0x2e20 kernel/bpf/verifier.c:-1 do_check_insn kernel/bpf/verifier.c:20441 [inline] do_check+0x58f5/0xeba0 kernel/bpf/verifier.c:20581 do_check_common+0x19cc/0x25b0 kernel/bpf/verifier.c:23865 do_check_main kernel/bpf/verifier.c:23948 [inline] bpf_check+0x5e7a/0x1c300 kernel/bpf/verifier.c:25255 bpf_prog_load+0x13ba/0x1a10 kernel/bpf/syscall.c:3088 __sys_bpf+0x507/0x860 kernel/bpf/syscall.c:6164 __do_sys_bpf kernel/bpf/syscall.c:6274 [inline] __se_sys_bpf kernel/bpf/syscall.c:6272 [inline] __x64_sys_bpf+0x7c/0x90 kernel/bpf/syscall.c:6272 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xec/0xf80 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7fbd3cf8f7c9 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:00007fbd3ddc0038 EFLAGS: 00000246 ORIG_RAX: 0000000000000141 RAX: ffffffffffffffda RBX: 00007fbd3d1e5fa0 RCX: 00007fbd3cf8f7c9 RDX: 0000000000000049 RSI: 0000200000000140 RDI: 0000000000000005 RBP: 00007fbd3d013f91 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007fbd3d1e6038 R14: 00007fbd3d1e5fa0 R15: 00007ffe743f4378 ---------------- Code disassembly (best guess): 0: 98 cwtl 1: 00 00 add %al,(%rax) 3: 00 4c 8b 8c add %cl,-0x74(%rbx,%rcx,4) 7: 24 88 and $0x88,%al 9: 00 00 add %al,(%rax) b: 00 41 ff add %al,-0x1(%rcx) e: 34 24 xor $0x24,%al 10: 41 57 push %r15 12: 55 push %rbp 13: 41 55 push %r13 15: ff b4 24 f0 00 00 00 push 0xf0(%rsp) 1c: ff b4 24 a8 00 00 00 push 0xa8(%rsp) 23: ff b4 24 c0 00 00 00 push 0xc0(%rsp) * 2a: 67 48 0f b9 3a ud1 (%edx),%rdi <-- trapping instruction 2f: 48 83 c4 38 add $0x38,%rsp 33: 49 bf 00 00 00 00 00 movabs $0xdffffc0000000000,%r15 3a: fc ff df 3d: 48 rex.W 3e: 8b .byte 0x8b 3f: 84 .byte 0x84