#0/u invalid and of negative number OK #0/p invalid and of negative number OK #1/u invalid range check OK #1/p invalid range check OK #2/u check known subreg with unknown reg OK #2/p check known subreg with unknown reg OK #3/u valid map access into an array with a constant OK #3/p valid map access into an array with a constant OK #4/u valid map access into an array with a register OK #4/p valid map access into an array with a register OK #5/u valid map access into an array with a variable OK #5/p valid map access into an array with a variable OK #6/u valid map access into an array with a signed variable OK #6/p valid map access into an array with a signed variable OK #7/u invalid map access into an array with a constant OK #7/p invalid map access into an array with a constant OK #8/u invalid map access into an array with a register OK #8/p invalid map access into an array with a register OK #9/u invalid map access into an array with a variable OK #9/p invalid map access into an array with a variable OK #10/u invalid map access into an array with no floor check OK #10/p invalid map access into an array with no floor check OK #11/u invalid map access into an array with a invalid max check OK #11/p invalid map access into an array with a invalid max check OK #12/u invalid map access into an array with a invalid max check OK #12/p invalid map access into an array with a invalid max check OK #13/u valid read map access into a read-only array 1 OK #13/p valid read map access into a read-only array 1 OK #14/p valid read map access into a read-only array 2 OK #15/u invalid write map access into a read-only array 1 OK #15/p invalid write map access into a read-only array 1 OK #16/p invalid write map access into a read-only array 2 OK #17/u valid write map access into a write-only array 1 OK #17/p valid write map access into a write-only array 1 OK #18/p valid write map access into a write-only array 2 OK #19/u invalid read map access into a write-only array 1 OK #19/p invalid read map access into a write-only array 1 OK #20/p invalid read map access into a write-only array 2 OK #21/u BPF_ATOMIC_AND without fetch OK #21/p BPF_ATOMIC_AND without fetch OK #22/u BPF_ATOMIC_AND with fetch OK #22/p BPF_ATOMIC_AND with fetch OK #23/u BPF_ATOMIC_AND with fetch 32bit OK #23/p BPF_ATOMIC_AND with fetch 32bit OK #24/u BPF_ATOMIC_AND with fetch - r0 as source reg OK #24/p BPF_ATOMIC_AND with fetch - r0 as source reg OK #25/u BPF_ATOMIC bounds propagation, mem->reg OK #25/p BPF_ATOMIC bounds propagation, mem->reg OK #26/u atomic compare-and-exchange smoketest - 64bit OK #26/p atomic compare-and-exchange smoketest - 64bit OK #27/u atomic compare-and-exchange smoketest - 32bit FAIL Unexpected success to load! verification time 59 usec stack depth 4 processed 23 insns (limit 1000000) max_states_per_insn 0 total_states 2 peak_states 2 mark_read 1 #27/p atomic compare-and-exchange smoketest - 32bit OK #28/u Can't use cmpxchg on uninit src reg OK #28/p Can't use cmpxchg on uninit src reg OK #29/u Can't use cmpxchg on uninit memory OK #29/p Can't use cmpxchg on uninit memory OK #30/u BPF_W cmpxchg should zero top 32 bits FAIL Unexpected success to load! verification time 32 usec stack depth 8 processed 13 insns (limit 1000000) max_states_per_insn 0 total_states 1 peak_states 1 mark_read 0 #30/p BPF_W cmpxchg should zero top 32 bits OK #31/u Dest pointer in r0 - succeed, check 2 OK #31/p Dest pointer in r0 - succeed, check 2 OK #32/u Dest pointer in r0 - succeed, check 3 OK #32/p Dest pointer in r0 - succeed, check 3 OK #33/u Dest pointer in r0 - succeed, check 4 OK #33/p Dest pointer in r0 - succeed, check 4 OK #34/u Dest pointer in r0 - succeed, check 5 OK #34/p Dest pointer in r0 - succeed, check 5 OK #35/u BPF_ATOMIC_FETCH_ADD smoketest - 64bit OK #35/p BPF_ATOMIC_FETCH_ADD smoketest - 64bit OK #36/u BPF_ATOMIC_FETCH_ADD smoketest - 32bit OK #36/p BPF_ATOMIC_FETCH_ADD smoketest - 32bit OK #37/u Can't use ATM_FETCH_ADD on frame pointer OK #37/p Can't use ATM_FETCH_ADD on frame pointer OK #38/u Can't use ATM_FETCH_ADD on uninit src reg OK #38/p Can't use ATM_FETCH_ADD on uninit src reg OK #39/u Can't use ATM_FETCH_ADD on uninit dst reg OK #39/p Can't use ATM_FETCH_ADD on uninit dst reg OK #40/p Can't use ATM_FETCH_ADD on kernel memory OK #41/u BPF_ATOMIC OR without fetch OK #41/p BPF_ATOMIC OR without fetch OK #42/u BPF_ATOMIC OR with fetch OK #42/p BPF_ATOMIC OR with fetch OK #43/u BPF_ATOMIC OR with fetch 32bit OK #43/p BPF_ATOMIC OR with fetch 32bit OK #44/u BPF_W atomic_fetch_or should zero top 32 bits OK #44/p BPF_W atomic_fetch_or should zero top 32 bits OK #45/u atomic exchange smoketest - 64bit OK #45/p atomic exchange smoketest - 64bit OK #46/u atomic exchange smoketest - 32bit OK #46/p atomic exchange smoketest - 32bit OK #47/u BPF_ATOMIC XOR without fetch OK #47/p BPF_ATOMIC XOR without fetch OK #48/u BPF_ATOMIC XOR with fetch OK #48/p BPF_ATOMIC XOR with fetch OK #49/u BPF_ATOMIC XOR with fetch 32bit OK #49/p BPF_ATOMIC XOR with fetch 32bit OK #50/u empty prog OK #50/p empty prog OK #51/u only exit insn OK #51/p only exit insn OK #52/u no bpf_exit OK #52/p no bpf_exit OK #53/u invalid call insn1 OK #53/p invalid call insn1 OK #54/u invalid call insn2 OK #54/p invalid call insn2 OK #55/u invalid function call OK #55/p invalid function call OK #56/p invalid argument register OK #57/p non-invalid argument register OK #58/u add+sub+mul OK #58/p add+sub+mul OK #59/p xor32 zero extend check OK #60/u arsh32 on imm OK #60/p arsh32 on imm OK #61/u arsh32 on imm 2 OK #61/p arsh32 on imm 2 OK #62/u arsh32 on reg OK #62/p arsh32 on reg OK #63/u arsh32 on reg 2 OK #63/p arsh32 on reg 2 OK #64/u arsh64 on imm OK #64/p arsh64 on imm OK #65/u arsh64 on reg OK #65/p arsh64 on reg OK #66/u lsh64 by 0 imm OK #66/p lsh64 by 0 imm OK #67/u rsh64 by 0 imm OK #67/p rsh64 by 0 imm OK #68/u arsh64 by 0 imm OK #68/p arsh64 by 0 imm OK #69/u lsh64 by 0 reg OK #69/p lsh64 by 0 reg OK #70/u rsh64 by 0 reg OK #70/p rsh64 by 0 reg OK #71/u arsh64 by 0 reg OK #71/p arsh64 by 0 reg OK #72/u invalid 64-bit BPF_END OK #72/p invalid 64-bit BPF_END OK #73/p mov64 src == dst OK #74/p mov64 src != dst OK #75/u stack out of bounds OK #75/p stack out of bounds OK #76/u uninitialized stack1 OK #76/p uninitialized stack1 OK #77/u uninitialized stack2 OK #77/p uninitialized stack2 OK #78/u invalid fp arithmetic OK #78/p invalid fp arithmetic OK #79/u non-invalid fp arithmetic OK #79/p non-invalid fp arithmetic OK #80/u misaligned read from stack OK #80/p misaligned read from stack OK #81/u invalid src register in STX OK #81/p invalid src register in STX OK #82/u invalid dst register in STX OK #82/p invalid dst register in STX OK #83/u invalid dst register in ST OK #83/p invalid dst register in ST OK #84/u invalid src register in LDX OK #84/p invalid src register in LDX OK #85/u invalid dst register in LDX OK #85/p invalid dst register in LDX OK #86/u subtraction bounds (map value) variant 1 OK #86/p subtraction bounds (map value) variant 1 OK #87/u subtraction bounds (map value) variant 2 OK #87/p subtraction bounds (map value) variant 2 OK #88/u check subtraction on pointers for unpriv OK #88/p check subtraction on pointers for unpriv OK #89/u bounds check based on zero-extended MOV OK #89/p bounds check based on zero-extended MOV OK #90/u bounds check based on sign-extended MOV. test1 OK #90/p bounds check based on sign-extended MOV. test1 OK #91/u bounds check based on sign-extended MOV. test2 OK #91/p bounds check based on sign-extended MOV. test2 OK #92/p bounds check based on reg_off + var_off + insn_off. test1 OK #93/p bounds check based on reg_off + var_off + insn_off. test2 OK #94/u bounds check after truncation of non-boundary-crossing range OK #94/p bounds check after truncation of non-boundary-crossing range OK #95/u bounds check after truncation of boundary-crossing range (1) OK #95/p bounds check after truncation of boundary-crossing range (1) OK #96/u bounds check after truncation of boundary-crossing range (2) OK #96/p bounds check after truncation of boundary-crossing range (2) OK #97/u bounds check after wrapping 32-bit addition OK #97/p bounds check after wrapping 32-bit addition OK #98/u bounds check after shift with oversized count operand OK #98/p bounds check after shift with oversized count operand OK #99/u bounds check after right shift of maybe-negative number OK #99/p bounds check after right shift of maybe-negative number OK #100/u bounds check after 32-bit right shift with 64-bit input OK #100/p bounds check after 32-bit right shift with 64-bit input OK #101/u bounds check map access with off+size signed 32bit overflow. test1 OK #101/p bounds check map access with off+size signed 32bit overflow. test1 OK #102/u bounds check map access with off+size signed 32bit overflow. test2 OK #102/p bounds check map access with off+size signed 32bit overflow. test2 OK #103/u bounds check map access with off+size signed 32bit overflow. test3 OK #103/p bounds check map access with off+size signed 32bit overflow. test3 OK #104/u bounds check map access with off+size signed 32bit overflow. test4 OK #104/p bounds check map access with off+size signed 32bit overflow. test4 OK #105/u bounds check mixed 32bit and 64bit arithmetic. test1 OK #105/p bounds check mixed 32bit and 64bit arithmetic. test1 OK #106/u bounds check mixed 32bit and 64bit arithmetic. test2 OK #106/p bounds check mixed 32bit and 64bit arithmetic. test2 OK #107/p assigning 32bit bounds to 64bit for wA = 0, wB = wA OK #108/u bounds check for reg = 0, reg xor 1 OK #108/p bounds check for reg = 0, reg xor 1 OK #109/u bounds check for reg32 = 0, reg32 xor 1 OK #109/p bounds check for reg32 = 0, reg32 xor 1 OK #110/u bounds check for reg = 2, reg xor 3 OK #110/p bounds check for reg = 2, reg xor 3 OK #111/u bounds check for reg = any, reg xor 3 OK #111/p bounds check for reg = any, reg xor 3 OK #112/u bounds check for reg32 = any, reg32 xor 3 OK #112/p bounds check for reg32 = any, reg32 xor 3 OK #113/u bounds check for reg > 0, reg xor 3 OK #113/p bounds check for reg > 0, reg xor 3 OK #114/u bounds check for reg32 > 0, reg32 xor 3 OK #114/p bounds check for reg32 > 0, reg32 xor 3 OK #115/u bounds checks after 32-bit truncation. test 1 OK #115/p bounds checks after 32-bit truncation. test 1 OK #116/u bounds checks after 32-bit truncation. test 2 OK #116/p bounds checks after 32-bit truncation. test 2 OK #117/u check deducing bounds from const, 1 OK #117/p check deducing bounds from const, 1 OK #118/u check deducing bounds from const, 2 OK #118/p check deducing bounds from const, 2 OK #119/u check deducing bounds from const, 3 OK #119/p check deducing bounds from const, 3 OK #120/u check deducing bounds from const, 4 OK #120/p check deducing bounds from const, 4 OK #121/u check deducing bounds from const, 5 OK #121/p check deducing bounds from const, 5 OK #122/u check deducing bounds from const, 6 OK #122/p check deducing bounds from const, 6 OK #123/u check deducing bounds from const, 7 OK #123/p check deducing bounds from const, 7 OK #124/u check deducing bounds from const, 8 OK #124/p check deducing bounds from const, 8 OK #125/u check deducing bounds from const, 9 OK #125/p check deducing bounds from const, 9 OK #126/u check deducing bounds from const, 10 OK #126/p check deducing bounds from const, 10 OK #127/u bounds checks mixing signed and unsigned, positive bounds OK #127/p bounds checks mixing signed and unsigned, positive bounds OK #128/u bounds checks mixing signed and unsigned OK #128/p bounds checks mixing signed and unsigned OK #129/u bounds checks mixing signed and unsigned, variant 2 OK #129/p bounds checks mixing signed and unsigned, variant 2 OK #130/u bounds checks mixing signed and unsigned, variant 3 OK #130/p bounds checks mixing signed and unsigned, variant 3 OK #131/u bounds checks mixing signed and unsigned, variant 4 OK #131/p bounds checks mixing signed and unsigned, variant 4 OK #132/u bounds checks mixing signed and unsigned, variant 5 OK #132/p bounds checks mixing signed and unsigned, variant 5 OK #133/u bounds checks mixing signed and unsigned, variant 6 OK #133/p bounds checks mixing signed and unsigned, variant 6 OK #134/u bounds checks mixing signed and unsigned, variant 7 OK #134/p bounds checks mixing signed and unsigned, variant 7 OK #135/u bounds checks mixing signed and unsigned, variant 8 OK #135/p bounds checks mixing signed and unsigned, variant 8 OK #136/u bounds checks mixing signed and unsigned, variant 9 OK #136/p bounds checks mixing signed and unsigned, variant 9 OK #137/u bounds checks mixing signed and unsigned, variant 10 OK #137/p bounds checks mixing signed and unsigned, variant 10 OK #138/u bounds checks mixing signed and unsigned, variant 11 OK #138/p bounds checks mixing signed and unsigned, variant 11 OK #139/u bounds checks mixing signed and unsigned, variant 12 OK #139/p bounds checks mixing signed and unsigned, variant 12 OK #140/u bounds checks mixing signed and unsigned, variant 13 OK #140/p bounds checks mixing signed and unsigned, variant 13 OK #141/u bounds checks mixing signed and unsigned, variant 14 OK #141/p bounds checks mixing signed and unsigned, variant 14 OK #142/u bounds checks mixing signed and unsigned, variant 15 OK #142/p bounds checks mixing signed and unsigned, variant 15 OK #143/p bpf_get_stack return R0 within range FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #144/p bpf_get_task_stack return R0 range is refined OK #145/p calls: basic sanity Did not run the program (not supported) OK #146/u calls: not on unpriviledged OK #146/p calls: not on unpriviledged OK #147/p calls: div by 0 in subprog OK #148/p calls: multiple ret types in subprog 1 OK #149/p calls: multiple ret types in subprog 2 OK #150/p calls: trigger reg2btf_ids[reg->type] for reg->type > __BPF_REG_TYPE_MAX FAIL Unexpected verifier log! EXP: arg#0 pointer type STRUCT prog_test_ref_kfunc must point RES: FAIL Unexpected error message! EXP: arg#0 pointer type STRUCT prog_test_ref_kfunc must point RES: kernel btf_id 0 is not a function verification time 17 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 kernel btf_id 0 is not a function verification time 17 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #151/p calls: overlapping caller/callee OK #152/p calls: wrong recursive calls OK #153/p calls: wrong src reg OK #154/p calls: wrong off value OK #155/p calls: jump back loop OK #156/p calls: conditional call OK #157/p calls: conditional call 2 Did not run the program (not supported) OK #158/u calls: conditional call 3 OK #158/p calls: conditional call 3 OK #159/p calls: conditional call 4 Did not run the program (not supported) OK #160/p calls: conditional call 5 OK #161/p calls: conditional call 6 OK #162/p calls: using r0 returned by callee Did not run the program (not supported) OK #163/p calls: using uninit r0 from callee OK #164/p calls: callee is using r1 OK #165/u calls: callee using args1 OK #165/p calls: callee using args1 OK #166/p calls: callee using wrong args2 OK #167/u calls: callee using two args OK #167/p calls: callee using two args OK #168/p calls: callee changing pkt pointers OK #169/u calls: ptr null check in subprog OK #169/p calls: ptr null check in subprog OK #170/p calls: two calls with args OK #171/p calls: calls with stack arith OK #172/p calls: calls with misaligned stack access OK #173/p calls: calls control flow, jump test OK #174/p calls: calls control flow, jump test 2 OK #175/p calls: two calls with bad jump OK #176/p calls: recursive call. test1 OK #177/p calls: recursive call. test2 OK #178/p calls: unreachable code OK #179/p calls: invalid call OK #180/p calls: invalid call 2 OK #181/p calls: jumping across function bodies. test1 OK #182/p calls: jumping across function bodies. test2 OK #183/p calls: call without exit OK #184/p calls: call into middle of ld_imm64 OK #185/p calls: call into middle of other call OK #186/p calls: subprog call with ld_abs in main prog OK #187/p calls: two calls with bad fallthrough OK #188/p calls: two calls with stack read OK #189/p calls: two calls with stack write OK #190/p calls: stack overflow using two frames (pre-call access) OK #191/p calls: stack overflow using two frames (post-call access) OK #192/p calls: stack depth check using three frames. test1 OK #193/p calls: stack depth check using three frames. test2 OK #194/p calls: stack depth check using three frames. test3 OK #195/p calls: stack depth check using three frames. test4 OK #196/p calls: stack depth check using three frames. test5 OK #197/p calls: stack depth check in dead code OK #198/p calls: spill into caller stack frame OK #199/p calls: write into caller stack frame OK #200/p calls: write into callee stack frame OK #201/p calls: two calls with stack write and void return OK #202/u calls: ambiguous return value OK #202/p calls: ambiguous return value OK #203/p calls: two calls that return map_value OK #204/p calls: two calls that return map_value with bool condition OK #205/p calls: two calls that return map_value with incorrect bool check OK #206/p calls: two calls that receive map_value via arg=ptr_stack_of_caller. test1 OK #207/p calls: two calls that receive map_value via arg=ptr_stack_of_caller. test2 OK #208/p calls: two jumps that receive map_value via arg=ptr_stack_of_jumper. test3 OK #209/p calls: two calls that receive map_value_ptr_or_null via arg. test1 OK #210/p calls: two calls that receive map_value_ptr_or_null via arg. test2 OK #211/p calls: pkt_ptr spill into caller stack OK #212/p calls: pkt_ptr spill into caller stack 2 OK #213/p calls: pkt_ptr spill into caller stack 3 OK #214/p calls: pkt_ptr spill into caller stack 4 OK #215/p calls: pkt_ptr spill into caller stack 5 OK #216/p calls: pkt_ptr spill into caller stack 6 OK #217/p calls: pkt_ptr spill into caller stack 7 OK #218/p calls: pkt_ptr spill into caller stack 8 OK #219/p calls: pkt_ptr spill into caller stack 9 OK #220/p calls: caller stack init to zero or map_value_or_null OK #221/p calls: stack init to zero and pruning OK #222/u calls: ctx read at start of subprog OK #222/p calls: ctx read at start of subprog OK #223/u calls: cross frame pruning OK #223/p calls: cross frame pruning OK #224/u calls: cross frame pruning - liveness propagation OK #224/p calls: cross frame pruning - liveness propagation OK #225/u unreachable OK #225/p unreachable OK #226/u unreachable2 OK #226/p unreachable2 OK #227/u out of range jump OK #227/p out of range jump OK #228/u out of range jump2 OK #228/p out of range jump2 OK #229/u loop (back-edge) OK #229/p loop (back-edge) OK #230/u loop2 (back-edge) OK #230/p loop2 (back-edge) OK #231/u conditional loop OK #231/p conditional loop OK #232/p bpf_exit with invalid return code. test1 OK #233/p bpf_exit with invalid return code. test2 Did not run the program (not supported) OK #234/p bpf_exit with invalid return code. test3 OK #235/p bpf_exit with invalid return code. test4 Did not run the program (not supported) OK #236/p bpf_exit with invalid return code. test5 OK #237/p bpf_exit with invalid return code. test6 OK #238/p bpf_exit with invalid return code. test7 OK #239/u direct packet read test#1 for CGROUP_SKB OK #239/p direct packet read test#1 for CGROUP_SKB OK #240/u direct packet read test#2 for CGROUP_SKB OK #240/p direct packet read test#2 for CGROUP_SKB OK #241/u direct packet read test#3 for CGROUP_SKB OK #241/p direct packet read test#3 for CGROUP_SKB OK #242/u direct packet read test#4 for CGROUP_SKB OK #242/p direct packet read test#4 for CGROUP_SKB OK #243/u invalid access of tc_classid for CGROUP_SKB OK #243/p invalid access of tc_classid for CGROUP_SKB OK #244/u invalid access of data_meta for CGROUP_SKB OK #244/p invalid access of data_meta for CGROUP_SKB OK #245/u invalid access of flow_keys for CGROUP_SKB OK #245/p invalid access of flow_keys for CGROUP_SKB OK #246/u invalid write access to napi_id for CGROUP_SKB OK #246/p invalid write access to napi_id for CGROUP_SKB OK #247/u write tstamp from CGROUP_SKB OK #247/p write tstamp from CGROUP_SKB OK #248/u read tstamp from CGROUP_SKB OK #248/p read tstamp from CGROUP_SKB OK #249/u valid cgroup storage access OK #249/p valid cgroup storage access OK #250/u invalid cgroup storage access 1 OK #250/p invalid cgroup storage access 1 OK #251/u invalid cgroup storage access 2 OK #251/p invalid cgroup storage access 2 OK #252/u invalid cgroup storage access 3 OK #252/p invalid cgroup storage access 3 OK #253/u invalid cgroup storage access 4 OK #253/p invalid cgroup storage access 4 OK #254/u invalid cgroup storage access 5 OK #254/p invalid cgroup storage access 5 OK #255/u invalid cgroup storage access 6 OK #255/p invalid cgroup storage access 6 OK #256/u valid per-cpu cgroup storage access OK #256/p valid per-cpu cgroup storage access OK #257/u invalid per-cpu cgroup storage access 1 OK #257/p invalid per-cpu cgroup storage access 1 OK #258/u invalid per-cpu cgroup storage access 2 OK #258/p invalid per-cpu cgroup storage access 2 OK #259/u invalid per-cpu cgroup storage access 3 OK #259/p invalid per-cpu cgroup storage access 3 OK #260/u invalid per-cpu cgroup storage access 4 OK #260/p invalid per-cpu cgroup storage access 4 OK #261/u invalid per-cpu cgroup storage access 5 OK #261/p invalid per-cpu cgroup storage access 5 OK #262/u invalid per-cpu cgroup storage access 6 OK #262/p invalid per-cpu cgroup storage access 6 OK #263/p constant register |= constant should keep constant type Did not run the program (not supported) OK #264/p constant register |= constant should not bypass stack boundary checks OK #265/p constant register |= constant register should keep constant type Did not run the program (not supported) OK #266/p constant register |= constant register should not bypass stack boundary checks OK #267/p context stores via ST OK #268/p context stores via BPF_ATOMIC OK #269/p arithmetic ops make PTR_TO_CTX unusable OK #270/p pass unmodified ctx pointer to helper OK #271/p pass modified ctx pointer to helper, 1 OK #272/u pass modified ctx pointer to helper, 2 OK #272/p pass modified ctx pointer to helper, 2 OK #273/p pass modified ctx pointer to helper, 3 OK #274/p pass ctx or null check, 1: ctx Did not run the program (not supported) OK #275/p pass ctx or null check, 2: null Did not run the program (not supported) OK #276/p pass ctx or null check, 3: 1 OK #277/p pass ctx or null check, 4: ctx - const OK #278/p pass ctx or null check, 5: null (connect) Did not run the program (not supported) OK #279/p pass ctx or null check, 6: null (bind) Did not run the program (not supported) OK #280/p pass ctx or null check, 7: ctx (bind) Did not run the program (not supported) OK #281/p pass ctx or null check, 8: null (bind) OK #282/p valid 1,2,4,8-byte reads from bpf_sk_lookup OK #283/p invalid 8-byte read from bpf_sk_lookup family field OK #284/p invalid 8-byte read from bpf_sk_lookup protocol field OK #285/p invalid 8-byte read from bpf_sk_lookup remote_ip4 field OK #286/p invalid 8-byte read from bpf_sk_lookup remote_ip6 field OK #287/p invalid 8-byte read from bpf_sk_lookup remote_port field OK #288/p invalid 8-byte read from bpf_sk_lookup local_ip4 field OK #289/p invalid 8-byte read from bpf_sk_lookup local_ip6 field OK #290/p invalid 8-byte read from bpf_sk_lookup local_port field OK #291/p invalid 4-byte read from bpf_sk_lookup sk field OK #292/p invalid 2-byte read from bpf_sk_lookup sk field OK #293/p invalid 1-byte read from bpf_sk_lookup sk field OK #294/p invalid 4-byte read past end of bpf_sk_lookup OK #295/p invalid 4-byte unaligned read from bpf_sk_lookup at odd offset OK #296/p invalid 4-byte unaligned read from bpf_sk_lookup at even offset OK #297/p invalid 8-byte write to bpf_sk_lookup OK #298/p invalid 4-byte write to bpf_sk_lookup OK #299/p invalid 2-byte write to bpf_sk_lookup OK #300/p invalid 1-byte write to bpf_sk_lookup OK #301/p invalid 4-byte write past end of bpf_sk_lookup OK #302/p valid access family in SK_MSG Did not run the program (not supported) OK #303/p valid access remote_ip4 in SK_MSG Did not run the program (not supported) OK #304/p valid access local_ip4 in SK_MSG Did not run the program (not supported) OK #305/p valid access remote_port in SK_MSG Did not run the program (not supported) OK #306/p valid access local_port in SK_MSG Did not run the program (not supported) OK #307/p valid access remote_ip6 in SK_MSG Did not run the program (not supported) OK #308/p valid access local_ip6 in SK_MSG Did not run the program (not supported) OK #309/p valid access size in SK_MSG Did not run the program (not supported) OK #310/p invalid 64B read of size in SK_MSG OK #311/p invalid read past end of SK_MSG OK #312/p invalid read offset in SK_MSG OK #313/p direct packet read for SK_MSG Did not run the program (not supported) OK #314/p direct packet write for SK_MSG Did not run the program (not supported) OK #315/p overlapping checks for direct packet access SK_MSG Did not run the program (not supported) OK #316/u access skb fields ok OK #316/p access skb fields ok OK #317/u access skb fields bad1 OK #317/p access skb fields bad1 OK #318/u access skb fields bad2 OK #318/p access skb fields bad2 OK #319/u access skb fields bad3 OK #319/p access skb fields bad3 OK #320/u access skb fields bad4 OK #320/p access skb fields bad4 OK #321/u invalid access __sk_buff family OK #321/p invalid access __sk_buff family OK #322/u invalid access __sk_buff remote_ip4 OK #322/p invalid access __sk_buff remote_ip4 OK #323/u invalid access __sk_buff local_ip4 OK #323/p invalid access __sk_buff local_ip4 OK #324/u invalid access __sk_buff remote_ip6 OK #324/p invalid access __sk_buff remote_ip6 OK #325/u invalid access __sk_buff local_ip6 OK #325/p invalid access __sk_buff local_ip6 OK #326/u invalid access __sk_buff remote_port OK #326/p invalid access __sk_buff remote_port OK #327/u invalid access __sk_buff remote_port OK #327/p invalid access __sk_buff remote_port OK #328/p valid access __sk_buff family Did not run the program (not supported) OK #329/p valid access __sk_buff remote_ip4 Did not run the program (not supported) OK #330/p valid access __sk_buff local_ip4 Did not run the program (not supported) OK #331/p valid access __sk_buff remote_ip6 Did not run the program (not supported) OK #332/p valid access __sk_buff local_ip6 Did not run the program (not supported) OK #333/p valid access __sk_buff remote_port Did not run the program (not supported) OK #334/p valid access __sk_buff remote_port Did not run the program (not supported) OK #335/p invalid access of tc_classid for SK_SKB OK #336/p invalid access of skb->mark for SK_SKB OK #337/p check skb->mark is not writeable by SK_SKB OK #338/p check skb->tc_index is writeable by SK_SKB Did not run the program (not supported) OK #339/p check skb->priority is writeable by SK_SKB Did not run the program (not supported) OK #340/p direct packet read for SK_SKB Did not run the program (not supported) OK #341/p direct packet write for SK_SKB Did not run the program (not supported) OK #342/p overlapping checks for direct packet access SK_SKB Did not run the program (not supported) OK #343/u check skb->mark is not writeable by sockets OK #343/p check skb->mark is not writeable by sockets OK #344/u check skb->tc_index is not writeable by sockets OK #344/p check skb->tc_index is not writeable by sockets OK #345/u check cb access: byte OK #345/p check cb access: byte OK #346/u __sk_buff->hash, offset 0, byte store not permitted OK #346/p __sk_buff->hash, offset 0, byte store not permitted OK #347/u __sk_buff->tc_index, offset 3, byte store not permitted OK #347/p __sk_buff->tc_index, offset 3, byte store not permitted OK #348/u check skb->hash byte load permitted OK #348/p check skb->hash byte load permitted OK #349/u check skb->hash byte load permitted 1 OK #349/p check skb->hash byte load permitted 1 OK #350/u check skb->hash byte load permitted 2 OK #350/p check skb->hash byte load permitted 2 OK #351/u check skb->hash byte load permitted 3 OK #351/p check skb->hash byte load permitted 3 OK #352/p check cb access: byte, wrong type OK #353/u check cb access: half OK #353/p check cb access: half OK #354/u check cb access: half, unaligned OK #354/p check cb access: half, unaligned OK #355/u check __sk_buff->hash, offset 0, half store not permitted OK #355/p check __sk_buff->hash, offset 0, half store not permitted OK #356/u check __sk_buff->tc_index, offset 2, half store not permitted OK #356/p check __sk_buff->tc_index, offset 2, half store not permitted OK #357/u check skb->hash half load permitted OK #357/p check skb->hash half load permitted OK #358/u check skb->hash half load permitted 2 OK #358/p check skb->hash half load permitted 2 OK #359/u check skb->hash half load not permitted, unaligned 1 OK #359/p check skb->hash half load not permitted, unaligned 1 OK #360/u check skb->hash half load not permitted, unaligned 3 OK #360/p check skb->hash half load not permitted, unaligned 3 OK #361/p check cb access: half, wrong type OK #362/u check cb access: word OK #362/p check cb access: word OK #363/u check cb access: word, unaligned 1 OK #363/p check cb access: word, unaligned 1 OK #364/u check cb access: word, unaligned 2 OK #364/p check cb access: word, unaligned 2 OK #365/u check cb access: word, unaligned 3 OK #365/p check cb access: word, unaligned 3 OK #366/u check cb access: word, unaligned 4 OK #366/p check cb access: word, unaligned 4 OK #367/u check cb access: double OK #367/p check cb access: double OK #368/u check cb access: double, unaligned 1 OK #368/p check cb access: double, unaligned 1 OK #369/u check cb access: double, unaligned 2 OK #369/p check cb access: double, unaligned 2 OK #370/u check cb access: double, oob 1 OK #370/p check cb access: double, oob 1 OK #371/u check cb access: double, oob 2 OK #371/p check cb access: double, oob 2 OK #372/u check __sk_buff->ifindex dw store not permitted OK #372/p check __sk_buff->ifindex dw store not permitted OK #373/u check __sk_buff->ifindex dw load not permitted OK #373/p check __sk_buff->ifindex dw load not permitted OK #374/p check cb access: double, wrong type OK #375/p check out of range skb->cb access OK #376/u write skb fields from socket prog OK #376/p write skb fields from socket prog OK #377/p write skb fields from tc_cls_act prog OK #378/u check skb->data half load not permitted OK #378/p check skb->data half load not permitted OK #379/u read gso_segs from CGROUP_SKB OK #379/p read gso_segs from CGROUP_SKB OK #380/u read gso_segs from CGROUP_SKB OK #380/p read gso_segs from CGROUP_SKB OK #381/u write gso_segs from CGROUP_SKB OK #381/p write gso_segs from CGROUP_SKB OK #382/p read gso_segs from CLS OK #383/u read gso_size from CGROUP_SKB OK #383/p read gso_size from CGROUP_SKB OK #384/u read gso_size from CGROUP_SKB OK #384/p read gso_size from CGROUP_SKB OK #385/u write gso_size from CGROUP_SKB OK #385/p write gso_size from CGROUP_SKB OK #386/p read gso_size from CLS OK #387/u check wire_len is not readable by sockets OK #387/p check wire_len is not readable by sockets OK #388/p check wire_len is readable by tc classifier OK #389/p check wire_len is not writable by tc classifier OK #390/p pkt > pkt_end taken check Did not run the program (not supported) OK #391/p pkt_end < pkt taken check Did not run the program (not supported) OK #392/p d_path accept OK #393/p d_path reject OK #394/u dead code: start OK #394/p dead code: start OK #395/u dead code: mid 1 OK #395/p dead code: mid 1 OK #396/u dead code: mid 2 OK #396/p dead code: mid 2 OK #397/u dead code: end 1 OK #397/p dead code: end 1 OK #398/u dead code: end 2 OK #398/p dead code: end 2 OK #399/u dead code: end 3 OK #399/p dead code: end 3 OK #400/u dead code: tail of main + func OK #400/p dead code: tail of main + func OK #401/u dead code: tail of main + two functions OK #401/p dead code: tail of main + two functions OK #402/u dead code: function in the middle and mid of another func OK #402/p dead code: function in the middle and mid of another func OK #403/u dead code: middle of main before call OK #403/p dead code: middle of main before call OK #404/u dead code: start of a function OK #404/p dead code: start of a function OK #405/u dead code: zero extension OK #405/p dead code: zero extension OK #406/p pkt_end - pkt_start is allowed OK #407/p direct packet access: test1 OK #408/p direct packet access: test2 OK #409/u direct packet access: test3 OK #409/p direct packet access: test3 OK #410/p direct packet access: test4 (write) OK #411/p direct packet access: test5 (pkt_end >= reg, good access) OK #412/p direct packet access: test6 (pkt_end >= reg, bad access) OK #413/p direct packet access: test7 (pkt_end >= reg, both accesses) OK #414/p direct packet access: test8 (double test, variant 1) OK #415/p direct packet access: test9 (double test, variant 2) OK #416/p direct packet access: test10 (write invalid) OK #417/p direct packet access: test11 (shift, good access) OK #418/p direct packet access: test12 (and, good access) OK #419/p direct packet access: test13 (branches, good access) OK #420/p direct packet access: test14 (pkt_ptr += 0, CONST_IMM, good access) OK #421/p direct packet access: test15 (spill with xadd) OK #422/p direct packet access: test16 (arith on data_end) OK #423/p direct packet access: test17 (pruning, alignment) OK #424/p direct packet access: test18 (imm += pkt_ptr, 1) OK #425/p direct packet access: test19 (imm += pkt_ptr, 2) OK #426/p direct packet access: test20 (x += pkt_ptr, 1) OK #427/p direct packet access: test21 (x += pkt_ptr, 2) OK #428/p direct packet access: test22 (x += pkt_ptr, 3) OK #429/p direct packet access: test23 (x += pkt_ptr, 4) OK #430/p direct packet access: test24 (x += pkt_ptr, 5) OK #431/p direct packet access: test25 (marking on <, good access) OK #432/p direct packet access: test26 (marking on <, bad access) OK #433/p direct packet access: test27 (marking on <=, good access) OK #434/p direct packet access: test28 (marking on <=, bad access) OK #435/p direct packet access: test29 (reg > pkt_end in subprog) OK #436/u direct stack access with 32-bit wraparound. test1 OK #436/p direct stack access with 32-bit wraparound. test1 OK #437/u direct stack access with 32-bit wraparound. test2 OK #437/p direct stack access with 32-bit wraparound. test2 OK #438/u direct stack access with 32-bit wraparound. test3 OK #438/p direct stack access with 32-bit wraparound. test3 OK #439/u direct map access, write test 1 OK #439/p direct map access, write test 1 OK #440/u direct map access, write test 2 OK #440/p direct map access, write test 2 OK #441/u direct map access, write test 3 OK #441/p direct map access, write test 3 OK #442/u direct map access, write test 4 OK #442/p direct map access, write test 4 OK #443/u direct map access, write test 5 OK #443/p direct map access, write test 5 OK #444/u direct map access, write test 6 OK #444/p direct map access, write test 6 OK #445/u direct map access, write test 7 OK #445/p direct map access, write test 7 OK #446/u direct map access, write test 8 OK #446/p direct map access, write test 8 OK #447/u direct map access, write test 9 OK #447/p direct map access, write test 9 OK #448/u direct map access, write test 10 OK #448/p direct map access, write test 10 OK #449/u direct map access, write test 11 OK #449/p direct map access, write test 11 OK #450/u direct map access, write test 12 OK #450/p direct map access, write test 12 OK #451/u direct map access, write test 13 OK #451/p direct map access, write test 13 OK #452/u direct map access, write test 14 OK #452/p direct map access, write test 14 OK #453/u direct map access, write test 15 OK #453/p direct map access, write test 15 OK #454/u direct map access, write test 16 OK #454/p direct map access, write test 16 OK #455/u direct map access, write test 17 OK #455/p direct map access, write test 17 OK #456/u direct map access, write test 18 OK #456/p direct map access, write test 18 OK #457/u direct map access, write test 19 OK #457/p direct map access, write test 19 OK #458/u direct map access, write test 20 OK #458/p direct map access, write test 20 OK #459/u direct map access, invalid insn test 1 OK #459/p direct map access, invalid insn test 1 OK #460/u direct map access, invalid insn test 2 OK #460/p direct map access, invalid insn test 2 OK #461/u direct map access, invalid insn test 3 OK #461/p direct map access, invalid insn test 3 OK #462/u direct map access, invalid insn test 4 OK #462/p direct map access, invalid insn test 4 OK #463/u direct map access, invalid insn test 5 OK #463/p direct map access, invalid insn test 5 OK #464/u direct map access, invalid insn test 6 OK #464/p direct map access, invalid insn test 6 OK #465/u direct map access, invalid insn test 7 OK #465/p direct map access, invalid insn test 7 OK #466/u direct map access, invalid insn test 8 OK #466/p direct map access, invalid insn test 8 OK #467/u direct map access, invalid insn test 9 OK #467/p direct map access, invalid insn test 9 OK #468/u DIV32 by 0, zero check 1 OK #468/p DIV32 by 0, zero check 1 OK #469/u DIV32 by 0, zero check 2 OK #469/p DIV32 by 0, zero check 2 OK #470/u DIV64 by 0, zero check OK #470/p DIV64 by 0, zero check OK #471/u MOD32 by 0, zero check 1 OK #471/p MOD32 by 0, zero check 1 OK #472/u MOD32 by 0, zero check 2 OK #472/p MOD32 by 0, zero check 2 OK #473/u MOD64 by 0, zero check OK #473/p MOD64 by 0, zero check OK #474/p DIV32 by 0, zero check ok, cls OK #475/p DIV32 by 0, zero check 1, cls OK #476/p DIV32 by 0, zero check 2, cls OK #477/p DIV64 by 0, zero check, cls OK #478/p MOD32 by 0, zero check ok, cls OK #479/p MOD32 by 0, zero check 1, cls OK #480/p MOD32 by 0, zero check 2, cls OK #481/p MOD64 by 0, zero check 1, cls OK #482/p MOD64 by 0, zero check 2, cls OK #483/p DIV32 overflow, check 1 OK #484/p DIV32 overflow, check 2 OK #485/p DIV64 overflow, check 1 OK #486/p DIV64 overflow, check 2 OK #487/p MOD32 overflow, check 1 OK #488/p MOD32 overflow, check 2 OK #489/p MOD64 overflow, check 1 OK #490/p MOD64 overflow, check 2 OK #491/p perfevent for sockops Did not run the program (not supported) OK #492/p perfevent for tc OK #493/p perfevent for lwt out OK #494/p perfevent for xdp OK #495/u perfevent for socket filter OK #495/p perfevent for socket filter OK #496/p perfevent for sk_skb Did not run the program (not supported) OK #497/u perfevent for cgroup skb OK #497/p perfevent for cgroup skb OK #498/p perfevent for cgroup dev Did not run the program (not supported) OK #499/p perfevent for cgroup sysctl Did not run the program (not supported) OK #500/p perfevent for cgroup sockopt Did not run the program (not supported) OK #501/p helper access to variable memory: stack, bitwise AND + JMP, correct bounds Did not run the program (not supported) OK #502/p helper access to variable memory: stack, bitwise AND, zero included OK #503/p helper access to variable memory: stack, bitwise AND + JMP, wrong max OK #504/p helper access to variable memory: stack, JMP, correct bounds Did not run the program (not supported) OK #505/p helper access to variable memory: stack, JMP (signed), correct bounds Did not run the program (not supported) OK #506/p helper access to variable memory: stack, JMP, bounds + offset OK #507/p helper access to variable memory: stack, JMP, wrong max OK #508/p helper access to variable memory: stack, JMP, no max check OK #509/p helper access to variable memory: stack, JMP, no min check OK #510/p helper access to variable memory: stack, JMP (signed), no min check OK #511/p helper access to variable memory: map, JMP, correct bounds FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 9 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #512/p helper access to variable memory: map, JMP, wrong max FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=48 off=0 size=49 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=48 off=0 size=49 RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #513/p helper access to variable memory: map adjusted, JMP, correct bounds FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #514/p helper access to variable memory: map adjusted, JMP, wrong max FAIL Unexpected verifier log! EXP: R1 min value is outside of the allowed memory range RES: FAIL Unexpected error message! EXP: R1 min value is outside of the allowed memory range RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #515/p helper access to variable memory: size = 0 allowed on NULL (ARG_PTR_TO_MEM_OR_NULL) OK #516/p helper access to variable memory: size > 0 not allowed on NULL (ARG_PTR_TO_MEM_OR_NULL) OK #517/p helper access to variable memory: size = 0 allowed on != NULL stack pointer (ARG_PTR_TO_MEM_OR_NULL) OK #518/p helper access to variable memory: size = 0 allowed on != NULL map pointer (ARG_PTR_TO_MEM_OR_NULL) OK #519/p helper access to variable memory: size possible = 0 allowed on != NULL stack pointer (ARG_PTR_TO_MEM_OR_NULL) OK #520/p helper access to variable memory: size possible = 0 allowed on != NULL map pointer (ARG_PTR_TO_MEM_OR_NULL) OK #521/p helper access to variable memory: size possible = 0 allowed on != NULL packet pointer (ARG_PTR_TO_MEM_OR_NULL) OK #522/p helper access to variable memory: size = 0 not allowed on NULL (!ARG_PTR_TO_MEM_OR_NULL) OK #523/p helper access to variable memory: size > 0 not allowed on NULL (!ARG_PTR_TO_MEM_OR_NULL) OK #524/p helper access to variable memory: size = 0 allowed on != NULL stack pointer (!ARG_PTR_TO_MEM_OR_NULL) Did not run the program (not supported) OK #525/p helper access to variable memory: size = 0 allowed on != NULL map pointer (!ARG_PTR_TO_MEM_OR_NULL) FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #526/p helper access to variable memory: size possible = 0 allowed on != NULL stack pointer (!ARG_PTR_TO_MEM_OR_NULL) FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #527/p helper access to variable memory: size possible = 0 allowed on != NULL map pointer (!ARG_PTR_TO_MEM_OR_NULL) FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #528/p helper access to variable memory: 8 bytes leak OK #529/p helper access to variable memory: 8 bytes no leak (init memory) Did not run the program (not supported) OK #530/p helper access to packet: test1, valid packet_ptr range OK #531/p helper access to packet: test2, unchecked packet_ptr OK #532/p helper access to packet: test3, variable add OK #533/p helper access to packet: test4, packet_ptr with bad range OK #534/p helper access to packet: test5, packet_ptr with too short range OK #535/p helper access to packet: test6, cls valid packet_ptr range OK #536/p helper access to packet: test7, cls unchecked packet_ptr OK #537/p helper access to packet: test8, cls variable add OK #538/p helper access to packet: test9, cls packet_ptr with bad range OK #539/p helper access to packet: test10, cls packet_ptr with too short range OK #540/p helper access to packet: test11, cls unsuitable helper 1 OK #541/p helper access to packet: test12, cls unsuitable helper 2 OK #542/p helper access to packet: test13, cls helper ok OK #543/p helper access to packet: test14, cls helper ok sub OK #544/p helper access to packet: test15, cls helper fail sub OK #545/p helper access to packet: test16, cls helper fail range 1 OK #546/p helper access to packet: test17, cls helper fail range 2 OK #547/p helper access to packet: test18, cls helper fail range 3 OK #548/p helper access to packet: test19, cls helper range zero OK #549/p helper access to packet: test20, pkt end as input OK #550/p helper access to packet: test21, wrong reg OK #551/p helper access to map: full range FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #552/p helper access to map: partial range FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 8 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #553/p helper access to map: empty range FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=48 off=0 size=0 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=48 off=0 size=0 RES: trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #554/p helper access to map: out-of-bound range FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=48 off=0 size=56 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=48 off=0 size=56 RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #555/p helper access to map: negative range FAIL Unexpected verifier log! EXP: R2 min value is negative RES: FAIL Unexpected error message! EXP: R2 min value is negative RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #556/p helper access to adjusted map (via const imm): full range FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #557/p helper access to adjusted map (via const imm): partial range FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #558/p helper access to adjusted map (via const imm): empty range FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=48 off=4 size=0 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=48 off=4 size=0 RES: trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #559/p helper access to adjusted map (via const imm): out-of-bound range FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=48 off=4 size=52 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=48 off=4 size=52 RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #560/p helper access to adjusted map (via const imm): negative range (> adjustment) FAIL Unexpected verifier log! EXP: R2 min value is negative RES: FAIL Unexpected error message! EXP: R2 min value is negative RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #561/p helper access to adjusted map (via const imm): negative range (< adjustment) FAIL Unexpected verifier log! EXP: R2 min value is negative RES: FAIL Unexpected error message! EXP: R2 min value is negative RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #562/p helper access to adjusted map (via const reg): full range FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #563/p helper access to adjusted map (via const reg): partial range FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #564/p helper access to adjusted map (via const reg): empty range FAIL Unexpected verifier log! EXP: R1 min value is outside of the allowed memory range RES: FAIL Unexpected error message! EXP: R1 min value is outside of the allowed memory range RES: trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #565/p helper access to adjusted map (via const reg): out-of-bound range FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=48 off=4 size=52 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=48 off=4 size=52 RES: trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #566/p helper access to adjusted map (via const reg): negative range (> adjustment) FAIL Unexpected verifier log! EXP: R2 min value is negative RES: FAIL Unexpected error message! EXP: R2 min value is negative RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #567/p helper access to adjusted map (via const reg): negative range (< adjustment) FAIL Unexpected verifier log! EXP: R2 min value is negative RES: FAIL Unexpected error message! EXP: R2 min value is negative RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #568/p helper access to adjusted map (via variable): full range FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #569/p helper access to adjusted map (via variable): partial range FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #570/p helper access to adjusted map (via variable): empty range FAIL Unexpected verifier log! EXP: R1 min value is outside of the allowed memory range RES: FAIL Unexpected error message! EXP: R1 min value is outside of the allowed memory range RES: trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #571/p helper access to adjusted map (via variable): no max check FAIL Unexpected verifier log! EXP: R1 unbounded memory access RES: FAIL Unexpected error message! EXP: R1 unbounded memory access RES: trace type programs can only use preallocated hash map verification time 9 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 9 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #572/p helper access to adjusted map (via variable): wrong max check FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=48 off=4 size=45 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=48 off=4 size=45 RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #573/p helper access to map: bounds check using <, good access FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #574/p helper access to map: bounds check using <, bad access FAIL Unexpected verifier log! EXP: R1 unbounded memory access RES: FAIL Unexpected error message! EXP: R1 unbounded memory access RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #575/p helper access to map: bounds check using <=, good access FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #576/p helper access to map: bounds check using <=, bad access FAIL Unexpected verifier log! EXP: R1 unbounded memory access RES: FAIL Unexpected error message! EXP: R1 unbounded memory access RES: trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #577/p helper access to map: bounds check using s<, good access FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 23 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #578/p helper access to map: bounds check using s<, good access 2 FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #579/p helper access to map: bounds check using s<, bad access FAIL Unexpected verifier log! EXP: R1 min value is negative RES: FAIL Unexpected error message! EXP: R1 min value is negative RES: trace type programs can only use preallocated hash map verification time 9 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 9 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #580/p helper access to map: bounds check using s<=, good access FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #581/p helper access to map: bounds check using s<=, good access 2 FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #582/p helper access to map: bounds check using s<=, bad access FAIL Unexpected verifier log! EXP: R1 min value is negative RES: FAIL Unexpected error message! EXP: R1 min value is negative RES: trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #583/p map lookup helper access to map FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #584/p map update helper access to map FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #585/p map update helper access to map: wrong size FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=8 off=0 size=16 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=8 off=0 size=16 RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #586/p map helper access to adjusted map (via const imm) FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #587/p map helper access to adjusted map (via const imm): out-of-bound 1 FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=16 off=12 size=8 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=16 off=12 size=8 RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #588/p map helper access to adjusted map (via const imm): out-of-bound 2 FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=16 off=-4 size=8 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=16 off=-4 size=8 RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #589/p map helper access to adjusted map (via const reg) FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #590/p map helper access to adjusted map (via const reg): out-of-bound 1 FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=16 off=12 size=8 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=16 off=12 size=8 RES: trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #591/p map helper access to adjusted map (via const reg): out-of-bound 2 FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=16 off=-4 size=8 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=16 off=-4 size=8 RES: trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #592/p map helper access to adjusted map (via variable) FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #593/p map helper access to adjusted map (via variable): no max check FAIL Unexpected verifier log! EXP: R2 unbounded memory access, make sure to bounds check any such access RES: FAIL Unexpected error message! EXP: R2 unbounded memory access, make sure to bounds check any such access RES: trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 6 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #594/p map helper access to adjusted map (via variable): wrong max check FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=16 off=9 size=8 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=16 off=9 size=8 RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #595/p ARG_PTR_TO_LONG uninitialized OK #596/p ARG_PTR_TO_LONG half-uninitialized OK #597/p ARG_PTR_TO_LONG misaligned OK #598/p ARG_PTR_TO_LONG size < sizeof(long) OK #599/p ARG_PTR_TO_LONG initialized Did not run the program (not supported) OK #600/u jit: lsh, rsh, arsh by 1 OK #600/p jit: lsh, rsh, arsh by 1 OK #601/u jit: mov32 for ldimm64, 1 OK #601/p jit: mov32 for ldimm64, 1 OK #602/u jit: mov32 for ldimm64, 2 OK #602/p jit: mov32 for ldimm64, 2 OK #603/u jit: various mul tests OK #603/p jit: various mul tests OK #604/u jit: jsgt, jslt OK #604/p jit: jsgt, jslt OK #605/p jit: torturous jumps, imm8 nop jmp and pure jump padding OK #606/p jit: torturous jumps, imm32 nop jmp and jmp_cond padding OK #607/p jit: torturous jumps in subprog OK #608/p jset32: BPF_K 3 cases OK #609/p jset32: BPF_X 3 cases OK #610/u jset32: ignores upper bits OK #610/p jset32: ignores upper bits OK #611/u jset32: min/max deduction OK #611/p jset32: min/max deduction OK #612/p jeq32: BPF_K 2 cases OK #613/p jeq32: BPF_X 3 cases OK #614/u jeq32: min/max deduction OK #614/p jeq32: min/max deduction OK #615/p jne32: BPF_K 2 cases OK #616/p jne32: BPF_X 3 cases OK #617/u jne32: min/max deduction OK #617/p jne32: min/max deduction OK #618/p jge32: BPF_K 3 cases OK #619/p jge32: BPF_X 3 cases OK #620/u jge32: min/max deduction OK #620/p jge32: min/max deduction OK #621/p jgt32: BPF_K 3 cases OK #622/p jgt32: BPF_X 3 cases OK #623/u jgt32: min/max deduction OK #623/p jgt32: min/max deduction OK #624/p jle32: BPF_K 3 cases OK #625/p jle32: BPF_X 3 cases OK #626/u jle32: min/max deduction OK #626/p jle32: min/max deduction OK #627/p jlt32: BPF_K 3 cases OK #628/p jlt32: BPF_X 3 cases OK #629/u jlt32: min/max deduction OK #629/p jlt32: min/max deduction OK #630/p jsge32: BPF_K 3 cases OK #631/p jsge32: BPF_X 3 cases OK #632/u jsge32: min/max deduction OK #632/p jsge32: min/max deduction OK #633/p jsgt32: BPF_K 3 cases OK #634/p jsgt32: BPF_X 3 cases OK #635/u jsgt32: min/max deduction OK #635/p jsgt32: min/max deduction OK #636/p jsle32: BPF_K 3 cases OK #637/p jsle32: BPF_X 3 cases OK #638/u jsle32: min/max deduction OK #638/p jsle32: min/max deduction OK #639/p jslt32: BPF_K 3 cases OK #640/p jslt32: BPF_X 3 cases OK #641/u jslt32: min/max deduction OK #641/p jslt32: min/max deduction OK #642/p jgt32: range bound deduction, reg op imm OK #643/p jgt32: range bound deduction, reg1 op reg2, reg1 unknown OK #644/p jle32: range bound deduction, reg1 op reg2, reg2 unknown OK #645/p jset: functional 7 cases OK #646/p jset: sign-extend OK #647/u jset: known const compare OK #647/p jset: known const compare OK #648/u jset: known const compare bad OK #648/p jset: known const compare bad OK #649/u jset: unknown const compare taken OK #649/p jset: unknown const compare taken OK #650/u jset: unknown const compare not taken OK #650/p jset: unknown const compare not taken OK #651/u jset: half-known const compare OK #651/p jset: half-known const compare OK #652/u jset: range OK #652/p jset: range OK #653/u jump test 1 OK #653/p jump test 1 OK #654/u jump test 2 OK #654/p jump test 2 OK #655/u jump test 3 OK #655/p jump test 3 OK #656/u jump test 4 OK #656/p jump test 4 OK #657/u jump test 5 OK #657/p jump test 5 OK #658/u jump test 6 OK #658/p jump test 6 OK #659/u jump test 7 OK #659/p jump test 7 OK #660/u jump test 8 OK #660/p jump test 8 OK #661/p jump/call test 9 OK #662/p jump/call test 10 OK #663/p jump/call test 11 OK #664/u junk insn OK #664/p junk insn OK #665/u junk insn2 OK #665/p junk insn2 OK #666/u junk insn3 OK #666/p junk insn3 OK #667/u junk insn4 OK #667/p junk insn4 OK #668/u junk insn5 OK #668/p junk insn5 OK #669/u ld_abs: check calling conv, r1 OK #669/p ld_abs: check calling conv, r1 OK #670/u ld_abs: check calling conv, r2 OK #670/p ld_abs: check calling conv, r2 OK #671/u ld_abs: check calling conv, r3 OK #671/p ld_abs: check calling conv, r3 OK #672/u ld_abs: check calling conv, r4 OK #672/p ld_abs: check calling conv, r4 OK #673/u ld_abs: check calling conv, r5 OK #673/p ld_abs: check calling conv, r5 OK #674/u ld_abs: check calling conv, r7 OK #674/p ld_abs: check calling conv, r7 OK #675/p ld_abs: tests on r6 and skb data reload helper OK #676/p ld_abs: invalid op 1 OK #677/p ld_abs: invalid op 2 OK #678/p ld_abs: nmap reduced OK #679/p ld_abs: div + abs, test 1 OK #680/p ld_abs: div + abs, test 2 OK #681/p ld_abs: div + abs, test 3 OK #682/p ld_abs: div + abs, test 4 OK #683/p ld_abs: vlan + abs, test 1 OK #684/p ld_abs: vlan + abs, test 2 OK #685/p ld_abs: jump around ld_abs OK #686/p ld_dw: xor semi-random 64 bit imms, test 1 OK #687/p ld_dw: xor semi-random 64 bit imms, test 2 OK #688/p ld_dw: xor semi-random 64 bit imms, test 3 OK #689/p ld_dw: xor semi-random 64 bit imms, test 4 OK #690/p ld_dw: xor semi-random 64 bit imms, test 5 OK #691/u test1 ld_imm64 OK #691/p test1 ld_imm64 OK #692/u test2 ld_imm64 OK #692/p test2 ld_imm64 OK #693/u test3 ld_imm64 OK #693/p test3 ld_imm64 OK #694/u test4 ld_imm64 OK #694/p test4 ld_imm64 OK #695/u test6 ld_imm64 OK #695/p test6 ld_imm64 OK #696/u test7 ld_imm64 OK #696/p test7 ld_imm64 OK #697/u test8 ld_imm64 OK #697/p test8 ld_imm64 OK #698/u test9 ld_imm64 OK #698/p test9 ld_imm64 OK #699/u test10 ld_imm64 OK #699/p test10 ld_imm64 OK #700/u test11 ld_imm64 OK #700/p test11 ld_imm64 OK #701/u test12 ld_imm64 OK #701/p test12 ld_imm64 OK #702/u test13 ld_imm64 OK #702/p test13 ld_imm64 OK #703/u test14 ld_imm64: reject 2nd imm != 0 OK #703/p test14 ld_imm64: reject 2nd imm != 0 OK #704/u ld_ind: check calling conv, r1 OK #704/p ld_ind: check calling conv, r1 OK #705/u ld_ind: check calling conv, r2 OK #705/p ld_ind: check calling conv, r2 OK #706/u ld_ind: check calling conv, r3 OK #706/p ld_ind: check calling conv, r3 OK #707/u ld_ind: check calling conv, r4 OK #707/p ld_ind: check calling conv, r4 OK #708/u ld_ind: check calling conv, r5 OK #708/p ld_ind: check calling conv, r5 OK #709/u ld_ind: check calling conv, r7 OK #709/p ld_ind: check calling conv, r7 OK #710/u leak pointer into ctx 1 OK #710/p leak pointer into ctx 1 OK #711/u leak pointer into ctx 2 OK #711/p leak pointer into ctx 2 OK #712/u leak pointer into ctx 3 OK #712/p leak pointer into ctx 3 OK #713/u leak pointer into map val OK #713/p leak pointer into map val OK #714/p bounded loop, count to 4 Did not run the program (not supported) OK #715/p bounded loop, count to 20 Did not run the program (not supported) OK #716/p bounded loop, count from positive unknown to 4 Did not run the program (not supported) OK #717/p bounded loop, count from totally unknown to 4 Did not run the program (not supported) OK #718/p bounded loop, count to 4 with equality Did not run the program (not supported) OK #719/p bounded loop, start in the middle OK #720/p bounded loop containing a forward jump Did not run the program (not supported) OK #721/p bounded loop that jumps out rather than in Did not run the program (not supported) OK #722/p infinite loop after a conditional jump OK #723/p bounded recursion OK #724/p infinite loop in two jumps OK #725/p infinite loop: three-jump trick OK #726/p not-taken loop with back jump to 1st insn OK #727/p taken loop with back jump to 1st insn OK #728/p taken loop with back jump to 1st insn, 2 OK #729/p invalid direct packet write for LWT_IN OK #730/p invalid direct packet write for LWT_OUT OK #731/p direct packet write for LWT_XMIT OK #732/p direct packet read for LWT_IN OK #733/p direct packet read for LWT_OUT OK #734/p direct packet read for LWT_XMIT OK #735/p overlapping checks for direct packet access OK #736/p make headroom for LWT_XMIT OK #737/u invalid access of tc_classid for LWT_IN OK #737/p invalid access of tc_classid for LWT_IN OK #738/u invalid access of tc_classid for LWT_OUT OK #738/p invalid access of tc_classid for LWT_OUT OK #739/u invalid access of tc_classid for LWT_XMIT OK #739/p invalid access of tc_classid for LWT_XMIT OK #740/p check skb->tc_classid half load not permitted for lwt prog OK #741/u map in map access OK #741/p map in map access OK #742/u invalid inner map pointer OK #742/p invalid inner map pointer OK #743/u forgot null checking on the inner map pointer OK #743/p forgot null checking on the inner map pointer OK #744/u bpf_map_ptr: read with negative offset rejected OK #744/p bpf_map_ptr: read with negative offset rejected OK #745/u bpf_map_ptr: write rejected OK #745/p bpf_map_ptr: write rejected OK #746/u bpf_map_ptr: read non-existent field rejected OK #746/p bpf_map_ptr: read non-existent field rejected OK #747/u bpf_map_ptr: read ops field accepted OK #747/p bpf_map_ptr: read ops field accepted OK #748/u bpf_map_ptr: r = 0, map_ptr = map_ptr + r OK #748/p bpf_map_ptr: r = 0, map_ptr = map_ptr + r OK #749/u bpf_map_ptr: r = 0, r = r + map_ptr OK #749/p bpf_map_ptr: r = 0, r = r + map_ptr OK #750/p calls: two calls returning different map pointers for lookup (hash, array) OK #751/p calls: two calls returning different map pointers for lookup (hash, map in map) OK #752/u cond: two branches returning different map pointers for lookup (tail, tail) OK #752/p cond: two branches returning different map pointers for lookup (tail, tail) OK #753/u cond: two branches returning same map pointers for lookup (tail, tail) OK #753/p cond: two branches returning same map pointers for lookup (tail, tail) OK #754/u invalid map_fd for function call OK #754/p invalid map_fd for function call OK #755/u don't check return value before access OK #755/p don't check return value before access OK #756/u access memory with incorrect alignment OK #756/p access memory with incorrect alignment OK #757/u sometimes access memory with incorrect alignment OK #757/p sometimes access memory with incorrect alignment OK #758/u masking, test out of bounds 1 OK #758/p masking, test out of bounds 1 OK #759/u masking, test out of bounds 2 OK #759/p masking, test out of bounds 2 OK #760/u masking, test out of bounds 3 OK #760/p masking, test out of bounds 3 OK #761/u masking, test out of bounds 4 OK #761/p masking, test out of bounds 4 OK #762/u masking, test out of bounds 5 OK #762/p masking, test out of bounds 5 OK #763/u masking, test out of bounds 6 OK #763/p masking, test out of bounds 6 OK #764/u masking, test out of bounds 7 OK #764/p masking, test out of bounds 7 OK #765/u masking, test out of bounds 8 OK #765/p masking, test out of bounds 8 OK #766/u masking, test out of bounds 9 OK #766/p masking, test out of bounds 9 OK #767/u masking, test out of bounds 10 OK #767/p masking, test out of bounds 10 OK #768/u masking, test out of bounds 11 OK #768/p masking, test out of bounds 11 OK #769/u masking, test out of bounds 12 OK #769/p masking, test out of bounds 12 OK #770/u masking, test in bounds 1 OK #770/p masking, test in bounds 1 OK #771/u masking, test in bounds 2 OK #771/p masking, test in bounds 2 OK #772/u masking, test in bounds 3 OK #772/p masking, test in bounds 3 OK #773/u masking, test in bounds 4 OK #773/p masking, test in bounds 4 OK #774/u masking, test in bounds 5 OK #774/p masking, test in bounds 5 OK #775/u masking, test in bounds 6 OK #775/p masking, test in bounds 6 OK #776/u masking, test in bounds 7 OK #776/p masking, test in bounds 7 OK #777/u masking, test in bounds 8 OK #777/p masking, test in bounds 8 OK #778/p meta access, test1 OK #779/p meta access, test2 OK #780/p meta access, test3 OK #781/p meta access, test4 OK #782/p meta access, test5 OK #783/p meta access, test6 OK #784/p meta access, test7 OK #785/p meta access, test8 OK #786/p meta access, test9 OK #787/p meta access, test10 OK #788/p meta access, test11 OK #789/p meta access, test12 OK #790/p check bpf_perf_event_data->sample_period byte load permitted Did not run the program (not supported) OK #791/p check bpf_perf_event_data->sample_period half load permitted Did not run the program (not supported) OK #792/p check bpf_perf_event_data->sample_period word load permitted Did not run the program (not supported) OK #793/p check bpf_perf_event_data->sample_period dword load permitted Did not run the program (not supported) OK #794/p precise: test 1 Did not run the program (not supported) OK #795/p precise: test 2 Did not run the program (not supported) OK #796/p precise: cross frame pruning OK #797/p precise: ST insn causing spi > allocated_stack OK #798/p precise: STX insn causing spi > allocated_stack OK #799/p prevent map lookup in stack trace OK #800/u prevent map lookup in prog array OK #800/p prevent map lookup in prog array OK #801/p raw_stack: no skb_load_bytes OK #802/p raw_stack: skb_load_bytes, negative len OK #803/p raw_stack: skb_load_bytes, negative len 2 OK #804/p raw_stack: skb_load_bytes, zero len OK #805/p raw_stack: skb_load_bytes, no init OK #806/p raw_stack: skb_load_bytes, init OK #807/p raw_stack: skb_load_bytes, spilled regs around bounds OK #808/p raw_stack: skb_load_bytes, spilled regs corruption OK #809/p raw_stack: skb_load_bytes, spilled regs corruption 2 OK #810/p raw_stack: skb_load_bytes, spilled regs + data OK #811/p raw_stack: skb_load_bytes, invalid access 1 OK #812/p raw_stack: skb_load_bytes, invalid access 2 OK #813/p raw_stack: skb_load_bytes, invalid access 3 OK #814/p raw_stack: skb_load_bytes, invalid access 4 OK #815/p raw_stack: skb_load_bytes, invalid access 5 OK #816/p raw_stack: skb_load_bytes, invalid access 6 OK #817/p raw_stack: skb_load_bytes, large access OK #818/p raw_tracepoint_writable: reject variable offset OK #819/p reference tracking: leak potential reference OK #820/p reference tracking: leak potential reference to sock_common OK #821/p reference tracking: leak potential reference on stack OK #822/p reference tracking: leak potential reference on stack 2 OK #823/p reference tracking: zero potential reference OK #824/p reference tracking: zero potential reference to sock_common OK #825/p reference tracking: copy and zero potential references OK #826/p reference tracking: release reference without check OK #827/p reference tracking: release reference to sock_common without check OK #828/p reference tracking: release reference OK #829/p reference tracking: release reference to sock_common OK #830/p reference tracking: release reference 2 OK #831/p reference tracking: release reference twice OK #832/p reference tracking: release reference twice inside branch OK #833/p reference tracking: alloc, check, free in one subbranch OK #834/p reference tracking: alloc, check, free in both subbranches OK #835/p reference tracking in call: free reference in subprog OK #836/p reference tracking in call: free reference in subprog and outside OK #837/p reference tracking in call: alloc & leak reference in subprog OK #838/p reference tracking in call: alloc in subprog, release outside OK #839/p reference tracking in call: sk_ptr leak into caller stack OK #840/p reference tracking in call: sk_ptr spill into caller stack OK #841/p reference tracking: allow LD_ABS OK #842/p reference tracking: forbid LD_ABS while holding reference OK #843/p reference tracking: allow LD_IND OK #844/p reference tracking: forbid LD_IND while holding reference OK #845/p reference tracking: check reference or tail call OK #846/p reference tracking: release reference then tail call OK #847/p reference tracking: leak possible reference over tail call OK #848/p reference tracking: leak checked reference over tail call OK #849/p reference tracking: mangle and release sock_or_null OK #850/p reference tracking: mangle and release sock OK #851/p reference tracking: access member OK #852/p reference tracking: write to member OK #853/p reference tracking: invalid 64-bit access of member OK #854/p reference tracking: access after release OK #855/p reference tracking: direct access for lookup OK #856/p reference tracking: use ptr from bpf_tcp_sock() after release OK #857/p reference tracking: use ptr from bpf_sk_fullsock() after release OK #858/p reference tracking: use ptr from bpf_sk_fullsock(tp) after release OK #859/p reference tracking: use sk after bpf_sk_release(tp) OK #860/p reference tracking: use ptr from bpf_get_listener_sock() after bpf_sk_release(sk) OK #861/p reference tracking: bpf_sk_release(listen_sk) OK #862/p reference tracking: tp->snd_cwnd after bpf_sk_fullsock(sk) and bpf_tcp_sock(sk) OK #863/p reference tracking: branch tracking valid pointer null comparison OK #864/p reference tracking: branch tracking valid pointer value comparison OK #865/p reference tracking: bpf_sk_release(btf_tcp_sock) OK #866/p reference tracking: use ptr from bpf_skc_to_tcp_sock() after release OK #867/u reference tracking: try to leak released ptr reg OK #867/p reference tracking: try to leak released ptr reg OK #868/p regalloc basic FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #869/p regalloc negative FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=48 off=48 size=1 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=48 off=48 size=1 RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #870/p regalloc src_reg mark FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #871/p regalloc src_reg negative FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=48 off=44 size=8 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=48 off=44 size=8 RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #872/p regalloc and spill FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 11 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #873/p regalloc and spill negative FAIL Unexpected verifier log! EXP: invalid access to map value, value_size=48 off=48 size=8 RES: FAIL Unexpected error message! EXP: invalid access to map value, value_size=48 off=48 size=8 RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #874/p regalloc three regs FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #875/p regalloc after call FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 8 usec stack depth 0+0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #876/p regalloc in callee FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 7 usec stack depth 0+0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #877/p regalloc, spill, JEQ FAIL Failed to load prog 'Invalid argument'! trace type programs can only use preallocated hash map verification time 8 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #878/u runtime/jit: tail_call within bounds, prog once OK #878/p runtime/jit: tail_call within bounds, prog once OK #879/u runtime/jit: tail_call within bounds, prog loop OK #879/p runtime/jit: tail_call within bounds, prog loop OK #880/u runtime/jit: tail_call within bounds, no prog OK #880/p runtime/jit: tail_call within bounds, no prog OK #881/u runtime/jit: tail_call within bounds, key 2 OK #881/p runtime/jit: tail_call within bounds, key 2 OK #882/u runtime/jit: tail_call within bounds, key 2 / key 2, first branch OK #882/p runtime/jit: tail_call within bounds, key 2 / key 2, first branch OK #883/u runtime/jit: tail_call within bounds, key 2 / key 2, second branch OK #883/p runtime/jit: tail_call within bounds, key 2 / key 2, second branch OK #884/u runtime/jit: tail_call within bounds, key 0 / key 2, first branch OK #884/p runtime/jit: tail_call within bounds, key 0 / key 2, first branch OK #885/u runtime/jit: tail_call within bounds, key 0 / key 2, second branch OK #885/p runtime/jit: tail_call within bounds, key 0 / key 2, second branch OK #886/u runtime/jit: tail_call within bounds, different maps, first branch OK #886/p runtime/jit: tail_call within bounds, different maps, first branch OK #887/u runtime/jit: tail_call within bounds, different maps, second branch OK #887/p runtime/jit: tail_call within bounds, different maps, second branch OK #888/u runtime/jit: tail_call out of bounds OK #888/p runtime/jit: tail_call out of bounds OK #889/u runtime/jit: pass negative index to tail_call OK #889/p runtime/jit: pass negative index to tail_call OK #890/u runtime/jit: pass > 32bit index to tail_call OK #890/p runtime/jit: pass > 32bit index to tail_call OK #891/p scale: scale test 1 OK #892/p scale: scale test 2 OK #893/u pointer/scalar confusion in state equality check (way 1) OK #893/p pointer/scalar confusion in state equality check (way 1) OK #894/u pointer/scalar confusion in state equality check (way 2) OK #894/p pointer/scalar confusion in state equality check (way 2) OK #895/p liveness pruning and write screening OK #896/u varlen_map_value_access pruning OK #896/p varlen_map_value_access pruning OK #897/p search pruning: all branches should be verified (nop operation) FAIL Unexpected verifier log! EXP: R6 invalid mem access 'inv' RES: FAIL Unexpected error message! EXP: R6 invalid mem access 'inv' RES: trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 7 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #898/p search pruning: all branches should be verified (invalid stack access) FAIL Unexpected verifier log! EXP: invalid read from stack off -16+0 size 8 RES: FAIL Unexpected error message! EXP: invalid read from stack off -16+0 size 8 RES: trace type programs can only use preallocated hash map verification time 15 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 trace type programs can only use preallocated hash map verification time 15 usec stack depth 0 processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0 #899/u allocated_stack OK #899/p allocated_stack OK #900/u write tracking and register parent chain bug OK #900/p write tracking and register parent chain bug OK #901/u skb->sk: no NULL check OK #901/p skb->sk: no NULL check OK #902/u skb->sk: sk->family [non fullsock field] OK #902/p skb->sk: sk->family [non fullsock field] OK #903/u skb->sk: sk->type [fullsock field] OK #903/p skb->sk: sk->type [fullsock field] OK #904/u bpf_sk_fullsock(skb->sk): no !skb->sk check OK #904/p bpf_sk_fullsock(skb->sk): no !skb->sk check OK #905/u sk_fullsock(skb->sk): no NULL check on ret OK #905/p sk_fullsock(skb->sk): no NULL check on ret OK #906/u sk_fullsock(skb->sk): sk->type [fullsock field] OK #906/p sk_fullsock(skb->sk): sk->type [fullsock field] OK #907/u sk_fullsock(skb->sk): sk->family [non fullsock field] OK #907/p sk_fullsock(skb->sk): sk->family [non fullsock field] OK #908/u sk_fullsock(skb->sk): sk->state [narrow load] OK #908/p sk_fullsock(skb->sk): sk->state [narrow load] OK #909/u sk_fullsock(skb->sk): sk->dst_port [word load] (backward compatibility) OK #909/p sk_fullsock(skb->sk): sk->dst_port [word load] (backward compatibility) OK #910/u sk_fullsock(skb->sk): sk->dst_port [half load] OK #910/p sk_fullsock(skb->sk): sk->dst_port [half load] OK #911/u sk_fullsock(skb->sk): sk->dst_port [half load] (invalid) OK #911/p sk_fullsock(skb->sk): sk->dst_port [half load] (invalid) OK #912/u sk_fullsock(skb->sk): sk->dst_port [byte load] OK #912/p sk_fullsock(skb->sk): sk->dst_port [byte load] OK #913/u sk_fullsock(skb->sk): sk->dst_port [byte load] (invalid) OK #913/p sk_fullsock(skb->sk): sk->dst_port [byte load] (invalid) OK #914/u sk_fullsock(skb->sk): past sk->dst_port [half load] (invalid) OK #914/p sk_fullsock(skb->sk): past sk->dst_port [half load] (invalid) OK #915/u sk_fullsock(skb->sk): sk->dst_ip6 [load 2nd byte] OK #915/p sk_fullsock(skb->sk): sk->dst_ip6 [load 2nd byte] OK #916/u sk_fullsock(skb->sk): sk->type [narrow load] OK #916/p sk_fullsock(skb->sk): sk->type [narrow load] OK #917/u sk_fullsock(skb->sk): sk->protocol [narrow load] OK #917/p sk_fullsock(skb->sk): sk->protocol [narrow load] OK #918/u sk_fullsock(skb->sk): beyond last field OK #918/p sk_fullsock(skb->sk): beyond last field OK #919/u bpf_tcp_sock(skb->sk): no !skb->sk check OK #919/p bpf_tcp_sock(skb->sk): no !skb->sk check OK #920/u bpf_tcp_sock(skb->sk): no NULL check on ret OK #920/p bpf_tcp_sock(skb->sk): no NULL check on ret OK #921/u bpf_tcp_sock(skb->sk): tp->snd_cwnd OK #921/p bpf_tcp_sock(skb->sk): tp->snd_cwnd OK #922/u bpf_tcp_sock(skb->sk): tp->bytes_acked OK #922/p bpf_tcp_sock(skb->sk): tp->bytes_acked OK #923/u bpf_tcp_sock(skb->sk): beyond last field OK #923/p bpf_tcp_sock(skb->sk): beyond last field OK #924/u bpf_tcp_sock(bpf_sk_fullsock(skb->sk)): tp->snd_cwnd OK #924/p bpf_tcp_sock(bpf_sk_fullsock(skb->sk)): tp->snd_cwnd OK #925/p bpf_sk_release(skb->sk) OK #926/p bpf_sk_release(bpf_sk_fullsock(skb->sk)) OK #927/p bpf_sk_release(bpf_tcp_sock(skb->sk)) OK #928/p sk_storage_get(map, skb->sk, NULL, 0): value == NULL OK #929/p sk_storage_get(map, skb->sk, 1, 1): value == 1 OK #930/p sk_storage_get(map, skb->sk, &stack_value, 1): stack_value OK #931/p sk_storage_get(map, skb->sk, &stack_value, 1): partially init stack_value OK #932/p bpf_map_lookup_elem(smap, &key) OK #933/p bpf_map_lookup_elem(xskmap, &key); xs->queue_id OK #934/p bpf_map_lookup_elem(sockmap, &key) OK #935/p bpf_map_lookup_elem(sockhash, &key) OK #936/p bpf_map_lookup_elem(sockmap, &key); sk->type [fullsock field]; bpf_sk_release(sk) Did not run the program (not supported) OK #937/p bpf_map_lookup_elem(sockhash, &key); sk->type [fullsock field]; bpf_sk_release(sk) Did not run the program (not supported) OK #938/p bpf_sk_select_reuseport(ctx, reuseport_array, &key, flags) Did not run the program (not supported) OK #939/p bpf_sk_select_reuseport(ctx, sockmap, &key, flags) Did not run the program (not supported) OK #940/p bpf_sk_select_reuseport(ctx, sockhash, &key, flags) Did not run the program (not supported) OK #941/p mark null check on return value of bpf_skc_to helpers OK #942/u check valid spill/fill OK #942/p check valid spill/fill OK #943/u check valid spill/fill, skb mark OK #943/p check valid spill/fill, skb mark OK #944/u check valid spill/fill, ptr to mem OK #944/p check valid spill/fill, ptr to mem OK #945/u check with invalid reg offset 0 OK #945/p check with invalid reg offset 0 OK #946/u check corrupted spill/fill OK #946/p check corrupted spill/fill OK #947/u check corrupted spill/fill, LSB OK #947/p check corrupted spill/fill, LSB OK #948/u check corrupted spill/fill, MSB OK #948/p check corrupted spill/fill, MSB OK #949/u spin_lock: test1 success OK #949/p spin_lock: test1 success OK #950/u spin_lock: test2 direct ld/st OK #950/p spin_lock: test2 direct ld/st OK #951/u spin_lock: test3 direct ld/st OK #951/p spin_lock: test3 direct ld/st OK #952/u spin_lock: test4 direct ld/st OK #952/p spin_lock: test4 direct ld/st OK #953/u spin_lock: test5 call within a locked region OK #953/p spin_lock: test5 call within a locked region OK #954/u spin_lock: test6 missing unlock OK #954/p spin_lock: test6 missing unlock OK #955/u spin_lock: test7 unlock without lock OK #955/p spin_lock: test7 unlock without lock OK #956/u spin_lock: test8 double lock OK #956/p spin_lock: test8 double lock OK #957/u spin_lock: test9 different lock OK #957/p spin_lock: test9 different lock OK #958/u spin_lock: test10 lock in subprog without unlock OK #958/p spin_lock: test10 lock in subprog without unlock OK #959/p spin_lock: test11 ld_abs under lock OK #960/u PTR_TO_STACK store/load OK #960/p PTR_TO_STACK store/load OK #961/u PTR_TO_STACK store/load - bad alignment on off OK #961/p PTR_TO_STACK store/load - bad alignment on off OK #962/u PTR_TO_STACK store/load - bad alignment on reg OK #962/p PTR_TO_STACK store/load - bad alignment on reg OK #963/u PTR_TO_STACK store/load - out of bounds low OK #963/p PTR_TO_STACK store/load - out of bounds low OK #964/u PTR_TO_STACK store/load - out of bounds high OK #964/p PTR_TO_STACK store/load - out of bounds high OK #965/u PTR_TO_STACK check high 1 OK #965/p PTR_TO_STACK check high 1 OK #966/u PTR_TO_STACK check high 2 OK #966/p PTR_TO_STACK check high 2 OK #967/u PTR_TO_STACK check high 3 OK #967/p PTR_TO_STACK check high 3 OK #968/u PTR_TO_STACK check high 4 OK #968/p PTR_TO_STACK check high 4 OK #969/u PTR_TO_STACK check high 5 OK #969/p PTR_TO_STACK check high 5 OK #970/u PTR_TO_STACK check high 6 OK #970/p PTR_TO_STACK check high 6 OK #971/u PTR_TO_STACK check high 7 OK #971/p PTR_TO_STACK check high 7 OK #972/u PTR_TO_STACK check low 1 OK #972/p PTR_TO_STACK check low 1 OK #973/u PTR_TO_STACK check low 2 OK #973/p PTR_TO_STACK check low 2 OK #974/u PTR_TO_STACK check low 3 OK #974/p PTR_TO_STACK check low 3 OK #975/u PTR_TO_STACK check low 4 OK #975/p PTR_TO_STACK check low 4 OK #976/u PTR_TO_STACK check low 5 OK #976/p PTR_TO_STACK check low 5 OK #977/u PTR_TO_STACK check low 6 OK #977/p PTR_TO_STACK check low 6 OK #978/u PTR_TO_STACK check low 7 OK #978/p PTR_TO_STACK check low 7 OK #979/u PTR_TO_STACK mixed reg/k, 1 OK #979/p PTR_TO_STACK mixed reg/k, 1 OK #980/u PTR_TO_STACK mixed reg/k, 2 OK #980/p PTR_TO_STACK mixed reg/k, 2 OK #981/u PTR_TO_STACK mixed reg/k, 3 OK #981/p PTR_TO_STACK mixed reg/k, 3 OK #982/u PTR_TO_STACK reg OK #982/p PTR_TO_STACK reg OK #983/u stack pointer arithmetic OK #983/p stack pointer arithmetic OK #984/p store PTR_TO_STACK in R10 to array map using BPF_B OK #985/u add32 reg zero extend check OK #985/p add32 reg zero extend check OK #986/u add32 imm zero extend check OK #986/p add32 imm zero extend check OK #987/u sub32 reg zero extend check OK #987/p sub32 reg zero extend check OK #988/u sub32 imm zero extend check OK #988/p sub32 imm zero extend check OK #989/u mul32 reg zero extend check OK #989/p mul32 reg zero extend check OK #990/u mul32 imm zero extend check OK #990/p mul32 imm zero extend check OK #991/u div32 reg zero extend check OK #991/p div32 reg zero extend check OK #992/u div32 imm zero extend check OK #992/p div32 imm zero extend check OK #993/u or32 reg zero extend check OK #993/p or32 reg zero extend check OK #994/u or32 imm zero extend check OK #994/p or32 imm zero extend check OK #995/u and32 reg zero extend check OK #995/p and32 reg zero extend check OK #996/u and32 imm zero extend check OK #996/p and32 imm zero extend check OK #997/u lsh32 reg zero extend check OK #997/p lsh32 reg zero extend check OK #998/u lsh32 imm zero extend check OK #998/p lsh32 imm zero extend check OK #999/u rsh32 reg zero extend check OK #999/p rsh32 reg zero extend check OK #1000/u rsh32 imm zero extend check OK #1000/p rsh32 imm zero extend check OK #1001/u neg32 reg zero extend check OK #1001/p neg32 reg zero extend check OK #1002/u mod32 reg zero extend check OK #1002/p mod32 reg zero extend check OK #1003/u mod32 imm zero extend check OK #1003/p mod32 imm zero extend check OK #1004/u xor32 reg zero extend check OK #1004/p xor32 reg zero extend check OK #1005/u xor32 imm zero extend check OK #1005/p xor32 imm zero extend check OK #1006/u mov32 reg zero extend check OK #1006/p mov32 reg zero extend check OK #1007/u mov32 imm zero extend check OK #1007/p mov32 imm zero extend check OK #1008/u arsh32 reg zero extend check OK #1008/p arsh32 reg zero extend check OK #1009/u arsh32 imm zero extend check OK #1009/p arsh32 imm zero extend check OK #1010/u end16 (to_le) reg zero extend check OK #1010/p end16 (to_le) reg zero extend check OK #1011/u end32 (to_le) reg zero extend check OK #1011/p end32 (to_le) reg zero extend check OK #1012/u end16 (to_be) reg zero extend check OK #1012/p end16 (to_be) reg zero extend check OK #1013/u end32 (to_be) reg zero extend check OK #1013/p end32 (to_be) reg zero extend check OK #1014/u ldx_b zero extend check OK #1014/p ldx_b zero extend check OK #1015/u ldx_h zero extend check OK #1015/p ldx_h zero extend check OK #1016/u ldx_w zero extend check OK #1016/p ldx_w zero extend check OK #1017/u read uninitialized register OK #1017/p read uninitialized register OK #1018/u read invalid register OK #1018/p read invalid register OK #1019/u program doesn't init R0 before exit OK #1019/p program doesn't init R0 before exit OK #1020/u program doesn't init R0 before exit in all branches OK #1020/p program doesn't init R0 before exit in all branches OK #1021/u unpriv: return pointer OK #1021/p unpriv: return pointer OK #1022/u unpriv: add const to pointer OK #1022/p unpriv: add const to pointer OK #1023/u unpriv: add pointer to pointer OK #1023/p unpriv: add pointer to pointer OK #1024/u unpriv: neg pointer OK #1024/p unpriv: neg pointer OK #1025/u unpriv: cmp pointer with const OK #1025/p unpriv: cmp pointer with const OK #1026/u unpriv: cmp pointer with pointer OK #1026/p unpriv: cmp pointer with pointer OK #1027/p unpriv: check that printk is disallowed Did not run the program (not supported) OK #1028/u unpriv: pass pointer to helper function OK #1028/p unpriv: pass pointer to helper function OK #1029/u unpriv: indirectly pass pointer on stack to helper function OK #1029/p unpriv: indirectly pass pointer on stack to helper function OK #1030/u unpriv: mangle pointer on stack 1 OK #1030/p unpriv: mangle pointer on stack 1 OK #1031/u unpriv: mangle pointer on stack 2 OK #1031/p unpriv: mangle pointer on stack 2 OK #1032/u unpriv: read pointer from stack in small chunks OK #1032/p unpriv: read pointer from stack in small chunks OK #1033/u unpriv: write pointer into ctx OK #1033/p unpriv: write pointer into ctx OK #1034/u unpriv: spill/fill of ctx OK #1034/p unpriv: spill/fill of ctx OK #1035/p unpriv: spill/fill of ctx 2 OK #1036/p unpriv: spill/fill of ctx 3 OK #1037/p unpriv: spill/fill of ctx 4 OK #1038/p unpriv: spill/fill of different pointers stx OK #1039/p unpriv: spill/fill of different pointers stx - ctx and sock OK #1040/p unpriv: spill/fill of different pointers stx - leak sock OK #1041/p unpriv: spill/fill of different pointers stx - sock and ctx (read) OK #1042/p unpriv: spill/fill of different pointers stx - sock and ctx (write) OK #1043/p unpriv: spill/fill of different pointers ldx OK #1044/u unpriv: write pointer into map elem value OK #1044/p unpriv: write pointer into map elem value OK #1045/u alu32: mov u32 const OK #1045/p alu32: mov u32 const OK #1046/u unpriv: partial copy of pointer OK #1046/p unpriv: partial copy of pointer OK #1047/u unpriv: pass pointer to tail_call OK #1047/p unpriv: pass pointer to tail_call OK #1048/u unpriv: cmp map pointer with zero OK #1048/p unpriv: cmp map pointer with zero OK #1049/u unpriv: write into frame pointer OK #1049/p unpriv: write into frame pointer OK #1050/u unpriv: spill/fill frame pointer OK #1050/p unpriv: spill/fill frame pointer OK #1051/u unpriv: cmp of frame pointer OK #1051/p unpriv: cmp of frame pointer OK #1052/u unpriv: adding of fp, reg OK #1052/p unpriv: adding of fp, reg OK #1053/u unpriv: adding of fp, imm OK #1053/p unpriv: adding of fp, imm OK #1054/u unpriv: cmp of stack pointer OK #1054/p unpriv: cmp of stack pointer OK #1055/u map element value store of cleared call register OK #1055/p map element value store of cleared call register OK #1056/u map element value with unaligned store OK #1056/p map element value with unaligned store OK #1057/u map element value with unaligned load OK #1057/p map element value with unaligned load OK #1058/u map element value is preserved across register spilling OK #1058/p map element value is preserved across register spilling OK #1059/u map element value is preserved across register spilling OK #1059/p map element value is preserved across register spilling OK #1060/u map element value or null is marked on register spilling OK #1060/p map element value or null is marked on register spilling OK #1061/u map element value illegal alu op, 1 OK #1061/p map element value illegal alu op, 1 OK #1062/u map element value illegal alu op, 2 OK #1062/p map element value illegal alu op, 2 OK #1063/u map element value illegal alu op, 3 OK #1063/p map element value illegal alu op, 3 OK #1064/u map element value illegal alu op, 4 OK #1064/p map element value illegal alu op, 4 OK #1065/u map element value illegal alu op, 5 OK #1065/p map element value illegal alu op, 5 OK #1066/p multiple registers share map_lookup_elem result OK #1067/p alu ops on ptr_to_map_value_or_null, 1 OK #1068/p alu ops on ptr_to_map_value_or_null, 2 OK #1069/p alu ops on ptr_to_map_value_or_null, 3 OK #1070/p invalid memory access with multiple map_lookup_elem calls OK #1071/p valid indirect map_lookup_elem access with 2nd lookup in branch OK #1072/u invalid map access from else condition OK #1072/p invalid map access from else condition OK #1073/p map lookup and null branch prediction OK #1074/u map access: known scalar += value_ptr unknown vs const OK #1074/p map access: known scalar += value_ptr unknown vs const OK #1075/u map access: known scalar += value_ptr const vs unknown OK #1075/p map access: known scalar += value_ptr const vs unknown OK #1076/u map access: known scalar += value_ptr const vs const (ne) OK #1076/p map access: known scalar += value_ptr const vs const (ne) OK #1077/u map access: known scalar += value_ptr const vs const (eq) OK #1077/p map access: known scalar += value_ptr const vs const (eq) OK #1078/u map access: known scalar += value_ptr unknown vs unknown (eq) OK #1078/p map access: known scalar += value_ptr unknown vs unknown (eq) OK #1079/u map access: known scalar += value_ptr unknown vs unknown (lt) OK #1079/p map access: known scalar += value_ptr unknown vs unknown (lt) OK #1080/u map access: known scalar += value_ptr unknown vs unknown (gt) OK #1080/p map access: known scalar += value_ptr unknown vs unknown (gt) OK #1081/u map access: known scalar += value_ptr from different maps OK #1081/p map access: known scalar += value_ptr from different maps OK #1082/u map access: value_ptr -= known scalar from different maps OK #1082/p map access: value_ptr -= known scalar from different maps OK #1083/u map access: known scalar += value_ptr from different maps, but same value properties OK #1083/p map access: known scalar += value_ptr from different maps, but same value properties OK #1084/u map access: mixing value pointer and scalar, 1 OK #1084/p map access: mixing value pointer and scalar, 1 OK #1085/u map access: mixing value pointer and scalar, 2 OK #1085/p map access: mixing value pointer and scalar, 2 OK #1086/u sanitation: alu with different scalars 1 OK #1086/p sanitation: alu with different scalars 1 OK #1087/u sanitation: alu with different scalars 2 OK #1087/p sanitation: alu with different scalars 2 OK #1088/u sanitation: alu with different scalars 3 OK #1088/p sanitation: alu with different scalars 3 OK #1089/u map access: value_ptr += known scalar, upper oob arith, test 1 OK #1089/p map access: value_ptr += known scalar, upper oob arith, test 1 OK #1090/u map access: value_ptr += known scalar, upper oob arith, test 2 OK #1090/p map access: value_ptr += known scalar, upper oob arith, test 2 OK #1091/u map access: value_ptr += known scalar, upper oob arith, test 3 OK #1091/p map access: value_ptr += known scalar, upper oob arith, test 3 OK #1092/u map access: value_ptr -= known scalar, lower oob arith, test 1 OK #1092/p map access: value_ptr -= known scalar, lower oob arith, test 1 OK #1093/u map access: value_ptr -= known scalar, lower oob arith, test 2 OK #1093/p map access: value_ptr -= known scalar, lower oob arith, test 2 OK #1094/u map access: value_ptr -= known scalar, lower oob arith, test 3 OK #1094/p map access: value_ptr -= known scalar, lower oob arith, test 3 OK #1095/u map access: known scalar += value_ptr OK #1095/p map access: known scalar += value_ptr OK #1096/u map access: value_ptr += known scalar, 1 OK #1096/p map access: value_ptr += known scalar, 1 OK #1097/u map access: value_ptr += known scalar, 2 OK #1097/p map access: value_ptr += known scalar, 2 OK #1098/u map access: value_ptr += known scalar, 3 OK #1098/p map access: value_ptr += known scalar, 3 OK #1099/u map access: value_ptr += known scalar, 4 OK #1099/p map access: value_ptr += known scalar, 4 OK #1100/u map access: value_ptr += known scalar, 5 OK #1100/p map access: value_ptr += known scalar, 5 OK #1101/u map access: value_ptr += known scalar, 6 OK #1101/p map access: value_ptr += known scalar, 6 OK #1102/u map access: value_ptr += N, value_ptr -= N known scalar OK #1102/p map access: value_ptr += N, value_ptr -= N known scalar OK #1103/u map access: unknown scalar += value_ptr, 1 OK #1103/p map access: unknown scalar += value_ptr, 1 OK #1104/u map access: unknown scalar += value_ptr, 2 OK #1104/p map access: unknown scalar += value_ptr, 2 OK #1105/u map access: unknown scalar += value_ptr, 3 OK #1105/p map access: unknown scalar += value_ptr, 3 OK #1106/u map access: unknown scalar += value_ptr, 4 OK #1106/p map access: unknown scalar += value_ptr, 4 OK #1107/u map access: value_ptr += unknown scalar, 1 OK #1107/p map access: value_ptr += unknown scalar, 1 OK #1108/u map access: value_ptr += unknown scalar, 2 OK #1108/p map access: value_ptr += unknown scalar, 2 OK #1109/u map access: value_ptr += unknown scalar, 3 OK #1109/p map access: value_ptr += unknown scalar, 3 OK #1110/u map access: value_ptr += value_ptr OK #1110/p map access: value_ptr += value_ptr OK #1111/u map access: known scalar -= value_ptr OK #1111/p map access: known scalar -= value_ptr OK #1112/u map access: value_ptr -= known scalar OK #1112/p map access: value_ptr -= known scalar OK #1113/u map access: value_ptr -= known scalar, 2 OK #1113/p map access: value_ptr -= known scalar, 2 OK #1114/u map access: unknown scalar -= value_ptr OK #1114/p map access: unknown scalar -= value_ptr OK #1115/u map access: value_ptr -= unknown scalar OK #1115/p map access: value_ptr -= unknown scalar OK #1116/u map access: value_ptr -= unknown scalar, 2 OK #1116/p map access: value_ptr -= unknown scalar, 2 OK #1117/u map access: value_ptr -= value_ptr OK #1117/p map access: value_ptr -= value_ptr OK #1118/u map access: trying to leak tained dst reg OK #1118/p map access: trying to leak tained dst reg OK #1119/p 32bit pkt_ptr -= scalar OK #1120/p 32bit scalar -= pkt_ptr OK #1121/p variable-offset ctx access OK #1122/u variable-offset stack read, priv vs unpriv OK #1122/p variable-offset stack read, priv vs unpriv OK #1123/p variable-offset stack read, uninitialized OK #1124/u variable-offset stack write, priv vs unpriv OK #1124/p variable-offset stack write, priv vs unpriv OK #1125/u variable-offset stack write clobbers spilled regs OK #1125/p variable-offset stack write clobbers spilled regs OK #1126/p indirect variable-offset stack access, unbounded OK #1127/p indirect variable-offset stack access, max out of bound OK #1128/p indirect variable-offset stack access, min out of bound OK #1129/p indirect variable-offset stack access, max_off+size > max_initialized OK #1130/p indirect variable-offset stack access, min_off < min_initialized OK #1131/u indirect variable-offset stack access, priv vs unpriv OK #1131/p indirect variable-offset stack access, priv vs unpriv OK #1132/p indirect variable-offset stack access, uninitialized OK #1133/p indirect variable-offset stack access, ok OK #1134/p wide store to bpf_sock_addr.user_ip6[0] Did not run the program (not supported) OK #1135/p wide store to bpf_sock_addr.user_ip6[1] OK #1136/p wide store to bpf_sock_addr.user_ip6[2] Did not run the program (not supported) OK #1137/p wide store to bpf_sock_addr.user_ip6[3] OK #1138/p wide store to bpf_sock_addr.msg_src_ip6[0] OK #1139/p wide store to bpf_sock_addr.msg_src_ip6[1] Did not run the program (not supported) OK #1140/p wide store to bpf_sock_addr.msg_src_ip6[2] OK #1141/p wide store to bpf_sock_addr.msg_src_ip6[3] OK #1142/p wide load from bpf_sock_addr.user_ip6[0] Did not run the program (not supported) OK #1143/p wide load from bpf_sock_addr.user_ip6[1] OK #1144/p wide load from bpf_sock_addr.user_ip6[2] Did not run the program (not supported) OK #1145/p wide load from bpf_sock_addr.user_ip6[3] OK #1146/p wide load from bpf_sock_addr.msg_src_ip6[0] OK #1147/p wide load from bpf_sock_addr.msg_src_ip6[1] Did not run the program (not supported) OK #1148/p wide load from bpf_sock_addr.msg_src_ip6[2] OK #1149/p wide load from bpf_sock_addr.msg_src_ip6[3] OK #1150/p xadd/w check unaligned stack OK #1151/p xadd/w check unaligned map OK #1152/p xadd/w check unaligned pkt OK #1153/p xadd/w check whether src/dst got mangled, 1 OK #1154/p xadd/w check whether src/dst got mangled, 2 OK #1155/p XDP, using ifindex from netdev OK #1156/p XDP pkt read, pkt_end mangling, bad access 1 OK #1157/p XDP pkt read, pkt_end mangling, bad access 2 OK #1158/p XDP pkt read, pkt_data' > pkt_end, corner case, good access OK #1159/p XDP pkt read, pkt_data' > pkt_end, bad access 1 OK #1160/p XDP pkt read, pkt_data' > pkt_end, bad access 2 OK #1161/p XDP pkt read, pkt_data' > pkt_end, corner case +1, good access OK #1162/p XDP pkt read, pkt_data' > pkt_end, corner case -1, bad access OK #1163/p XDP pkt read, pkt_end > pkt_data', good access OK #1164/p XDP pkt read, pkt_end > pkt_data', corner case -1, bad access OK #1165/p XDP pkt read, pkt_end > pkt_data', bad access 2 OK #1166/p XDP pkt read, pkt_end > pkt_data', corner case, good access OK #1167/p XDP pkt read, pkt_end > pkt_data', corner case +1, good access OK #1168/p XDP pkt read, pkt_data' < pkt_end, good access OK #1169/p XDP pkt read, pkt_data' < pkt_end, corner case -1, bad access OK #1170/p XDP pkt read, pkt_data' < pkt_end, bad access 2 OK #1171/p XDP pkt read, pkt_data' < pkt_end, corner case, good access OK #1172/p XDP pkt read, pkt_data' < pkt_end, corner case +1, good access OK #1173/p XDP pkt read, pkt_end < pkt_data', corner case, good access OK #1174/p XDP pkt read, pkt_end < pkt_data', bad access 1 OK #1175/p XDP pkt read, pkt_end < pkt_data', bad access 2 OK #1176/p XDP pkt read, pkt_end < pkt_data', corner case +1, good access OK #1177/p XDP pkt read, pkt_end < pkt_data', corner case -1, bad access OK #1178/p XDP pkt read, pkt_data' >= pkt_end, good access OK #1179/p XDP pkt read, pkt_data' >= pkt_end, corner case -1, bad access OK #1180/p XDP pkt read, pkt_data' >= pkt_end, bad access 2 OK #1181/p XDP pkt read, pkt_data' >= pkt_end, corner case, good access OK #1182/p XDP pkt read, pkt_data' >= pkt_end, corner case +1, good access OK #1183/p XDP pkt read, pkt_end >= pkt_data', corner case, good access OK #1184/p XDP pkt read, pkt_end >= pkt_data', bad access 1 OK #1185/p XDP pkt read, pkt_end >= pkt_data', bad access 2 OK #1186/p XDP pkt read, pkt_end >= pkt_data', corner case +1, good access OK #1187/p XDP pkt read, pkt_end >= pkt_data', corner case -1, bad access OK #1188/p XDP pkt read, pkt_data' <= pkt_end, corner case, good access OK #1189/p XDP pkt read, pkt_data' <= pkt_end, bad access 1 OK #1190/p XDP pkt read, pkt_data' <= pkt_end, bad access 2 OK #1191/p XDP pkt read, pkt_data' <= pkt_end, corner case +1, good access OK #1192/p XDP pkt read, pkt_data' <= pkt_end, corner case -1, bad access OK #1193/p XDP pkt read, pkt_end <= pkt_data', good access OK #1194/p XDP pkt read, pkt_end <= pkt_data', corner case -1, bad access OK #1195/p XDP pkt read, pkt_end <= pkt_data', bad access 2 OK #1196/p XDP pkt read, pkt_end <= pkt_data', corner case, good access OK #1197/p XDP pkt read, pkt_end <= pkt_data', corner case +1, good access OK #1198/p XDP pkt read, pkt_meta' > pkt_data, corner case, good access OK #1199/p XDP pkt read, pkt_meta' > pkt_data, bad access 1 OK #1200/p XDP pkt read, pkt_meta' > pkt_data, bad access 2 OK #1201/p XDP pkt read, pkt_meta' > pkt_data, corner case +1, good access OK #1202/p XDP pkt read, pkt_meta' > pkt_data, corner case -1, bad access OK #1203/p XDP pkt read, pkt_data > pkt_meta', good access OK #1204/p XDP pkt read, pkt_data > pkt_meta', corner case -1, bad access OK #1205/p XDP pkt read, pkt_data > pkt_meta', bad access 2 OK #1206/p XDP pkt read, pkt_data > pkt_meta', corner case, good access OK #1207/p XDP pkt read, pkt_data > pkt_meta', corner case +1, good access OK #1208/p XDP pkt read, pkt_meta' < pkt_data, good access OK #1209/p XDP pkt read, pkt_meta' < pkt_data, corner case -1, bad access OK #1210/p XDP pkt read, pkt_meta' < pkt_data, bad access 2 OK #1211/p XDP pkt read, pkt_meta' < pkt_data, corner case, good access OK #1212/p XDP pkt read, pkt_meta' < pkt_data, corner case +1, good access OK #1213/p XDP pkt read, pkt_data < pkt_meta', corner case, good access OK #1214/p XDP pkt read, pkt_data < pkt_meta', bad access 1 OK #1215/p XDP pkt read, pkt_data < pkt_meta', bad access 2 OK #1216/p XDP pkt read, pkt_data < pkt_meta', corner case +1, good access OK #1217/p XDP pkt read, pkt_data < pkt_meta', corner case -1, bad access OK #1218/p XDP pkt read, pkt_meta' >= pkt_data, good access OK #1219/p XDP pkt read, pkt_meta' >= pkt_data, corner case -1, bad access OK #1220/p XDP pkt read, pkt_meta' >= pkt_data, bad access 2 OK #1221/p XDP pkt read, pkt_meta' >= pkt_data, corner case, good access OK #1222/p XDP pkt read, pkt_meta' >= pkt_data, corner case +1, good access OK #1223/p XDP pkt read, pkt_data >= pkt_meta', corner case, good access OK #1224/p XDP pkt read, pkt_data >= pkt_meta', bad access 1 OK #1225/p XDP pkt read, pkt_data >= pkt_meta', bad access 2 OK #1226/p XDP pkt read, pkt_data >= pkt_meta', corner case +1, good access OK #1227/p XDP pkt read, pkt_data >= pkt_meta', corner case -1, bad access OK #1228/p XDP pkt read, pkt_meta' <= pkt_data, corner case, good access OK #1229/p XDP pkt read, pkt_meta' <= pkt_data, bad access 1 OK #1230/p XDP pkt read, pkt_meta' <= pkt_data, bad access 2 OK #1231/p XDP pkt read, pkt_meta' <= pkt_data, corner case +1, good access OK #1232/p XDP pkt read, pkt_meta' <= pkt_data, corner case -1, bad access OK #1233/p XDP pkt read, pkt_data <= pkt_meta', good access OK #1234/p XDP pkt read, pkt_data <= pkt_meta', corner case -1, bad access OK #1235/p XDP pkt read, pkt_data <= pkt_meta', bad access 2 OK #1236/p XDP pkt read, pkt_data <= pkt_meta', corner case, good access OK #1237/p XDP pkt read, pkt_data <= pkt_meta', corner case +1, good access OK Summary: 1754 PASSED, 0 SKIPPED, 67 FAILED