Bug 2029 - [ANCK-4.19 437][nightly][anolis8][x86_64]kernel-selftests测试集新增失败用例bpf.test_align
Summary: [ANCK-4.19 437][nightly][anolis8][x86_64]kernel-selftests测试集新增失败用例bpf.test_align
Status: NEW
Alias: None
Product: Anolis OS 8
Classification: Anolis OS
Component: kernel - anck-4.19 (show other bugs) kernel - anck-4.19
Version: 8.2
Hardware: All Linux
: P3-Medium S3-normal
Target Milestone: ---
Assignee: maqiao
QA Contact: shuming
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-09-01 19:15 UTC by zhixin01
Modified: 2022-11-30 11:49 UTC (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description zhixin01 alibaba_cloud_group 2022-09-01 19:15:43 UTC
[缺陷描述]:
kernel-selftests测试集新增失败用例bpf.test_align

任务链接:
https://tone.aliyun-inc.com/ws/6yddz4ne/test_result/100988

手动测试有2处失败:
[root@e18k01644 bpf]# ./test_align
Test   0: mov ... PASS
Test   1: shift ... PASS
Test   2: addsub ... PASS
Test   3: mul ... PASS
Test   4: unknown shift ... PASS
Test   5: unknown mul ... PASS
Test   6: packet const offset ... PASS
Test   7: packet variable offset ... PASS
Test   8: packet variable offset 2 ... PASS
Test   9: dubious pointer arithmetic ... Failed to find match 7: R5=inv(id=0,var_off=(0x2; 0xfffffffffffffffc))
func#0 @0
0: R1=ctx(id=0,off=0,imm=0) R10=fp0,call_-1
0: (61) r2 = *(u32 *)(r1 +76)
1: R1=ctx(id=0,off=0,imm=0) R2_w=pkt(id=0,off=0,r=0,imm=0) R10=fp0,call_-1
1: (61) r3 = *(u32 *)(r1 +80)
2: R1=ctx(id=0,off=0,imm=0) R2_w=pkt(id=0,off=0,r=0,imm=0) R3_w=pkt_end(id=0,off=0,imm=0) R10=fp0,call_-1
2: (b7) r0 = 0
3: R0_w=inv0 R1=ctx(id=0,off=0,imm=0) R2_w=pkt(id=0,off=0,r=0,imm=0) R3_w=pkt_end(id=0,off=0,imm=0) R10=fp0,call_-1
3: (bf) r5 = r3
4: R0_w=inv0 R1=ctx(id=0,off=0,imm=0) R2_w=pkt(id=0,off=0,r=0,imm=0) R3_w=pkt_end(id=0,off=0,imm=0) R5_w=pkt_end(id=0,off=0,imm=0) R10=fp0,call_-1
4: (1f) r5 -= r2
5: R0_w=inv0 R1=ctx(id=0,off=0,imm=0) R2_w=pkt(id=0,off=0,r=0,imm=0) R3_w=pkt_end(id=0,off=0,imm=0) R5_w=inv(id=0) R10=fp0,call_-1
5: (67) r5 <<= 2
6: R0_w=inv0 R1=ctx(id=0,off=0,imm=0) R2_w=pkt(id=0,off=0,r=0,imm=0) R3_w=pkt_end(id=0,off=0,imm=0) R5_w=inv(id=0,smax_value=9223372036854775804,umax_value=18446744073709551612,var_off=(0x0; 0xfffffffffffffffc)) R10=fp0,call_-1
6: (07) r5 += 14
7: R0=inv0 R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=0,imm=0) R3=pkt_end(id=0,off=0,imm=0) R5=inv(id=0,smin_value=-9223372036854775806,smax_value=9223372036854775806,umin_value=2,umax_value=18446744073709551614,var_off=(0x2; 0xfffffffffffffffc)) R10=fp0,call_-1
7: (75) if r5 s>= 0x0 goto pc+1
 R0=inv0 R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=0,imm=0) R3=pkt_end(id=0,off=0,imm=0) R5=inv(id=0,umin_value=9223372036854775810,umax_value=18446744073709551614,var_off=(0x8000000000000002; 0x7ffffffffffffffc)) R10=fp0,call_-1
8: R0=inv0 R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=0,imm=0) R3=pkt_end(id=0,off=0,imm=0) R5=inv(id=0,umin_value=9223372036854775810,umax_value=18446744073709551614,var_off=(0x8000000000000002; 0x7ffffffffffffffc)) R10=fp0,call_-1
8: (95) exit
9: R0=inv0 R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=0,imm=0) R3=pkt_end(id=0,off=0,imm=0) R5=inv(id=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R10=fp0,call_-1
9: (bf) r6 = r2
10: R0=inv0 R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=0,imm=0) R3=pkt_end(id=0,off=0,imm=0) R5=inv(id=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R6_w=pkt(id=0,off=0,r=0,imm=0) R10=fp0,call_-1
10: (0f) r6 += r5
11: R0=inv0 R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=0,imm=0) R3=pkt_end(id=0,off=0,imm=0) R5=inv(id=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R6_w=pkt(id=1,off=0,r=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R10=fp0,call_-1
11: (bf) r4 = r6
12: R0=inv0 R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=0,imm=0) R3=pkt_end(id=0,off=0,imm=0) R4_w=pkt(id=1,off=0,r=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R5=inv(id=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R6_w=pkt(id=1,off=0,r=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R10=fp0,call_-1
12: (07) r4 += 4
13: R0=inv0 R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=0,imm=0) R3=pkt_end(id=0,off=0,imm=0) R4=pkt(id=1,off=4,r=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R5=inv(id=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R6=pkt(id=1,off=0,r=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R10=fp0,call_-1
13: (3d) if r3 >= r4 goto pc+1
 R0=inv0 R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=0,imm=0) R3=pkt_end(id=0,off=0,imm=0) R4=pkt(id=1,off=4,r=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R5=inv(id=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R6=pkt(id=1,off=0,r=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R10=fp0,call_-1
14: R0=inv0 R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=0,imm=0) R3=pkt_end(id=0,off=0,imm=0) R4=pkt(id=1,off=4,r=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R5=inv(id=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R6=pkt(id=1,off=0,r=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R10=fp0,call_-1
14: (95) exit
15: R0=inv0 R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=0,imm=0) R3=pkt_end(id=0,off=0,imm=0) R4=pkt(id=1,off=4,r=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R5=inv(id=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R6=pkt(id=1,off=0,r=0,umin_value=2,umax_value=9223372036854775806,var_off=(0x2; 0x7ffffffffffffffc)) R10=fp0,call_-1
15: (61) r4 = *(u32 *)(r6 +0)
invalid access to packet, off=0 size=4, R6(id=1,off=0,r=0)
R6 offset is outside of the packet
FAIL
Test  10: variable subtraction ... Failed to find match 12: R6=inv(id=0,smin_value=-1006,smax_value=1034,var_off=(0x2; 0xfffffffffffffffc))
func#0 @0
0: R1=ctx(id=0,off=0,imm=0) R10=fp0,call_-1
0: (61) r2 = *(u32 *)(r1 +76)
1: R1=ctx(id=0,off=0,imm=0) R2_w=pkt(id=0,off=0,r=0,imm=0) R10=fp0,call_-1
1: (61) r3 = *(u32 *)(r1 +80)
2: R1=ctx(id=0,off=0,imm=0) R2_w=pkt(id=0,off=0,r=0,imm=0) R3_w=pkt_end(id=0,off=0,imm=0) R10=fp0,call_-1
2: (bf) r0 = r2
3: R0_w=pkt(id=0,off=0,r=0,imm=0) R1=ctx(id=0,off=0,imm=0) R2_w=pkt(id=0,off=0,r=0,imm=0) R3_w=pkt_end(id=0,off=0,imm=0) R10=fp0,call_-1
3: (07) r0 += 8
4: R0=pkt(id=0,off=8,r=0,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=0,imm=0) R3=pkt_end(id=0,off=0,imm=0) R10=fp0,call_-1
4: (3d) if r3 >= r0 goto pc+1
 R0=pkt(id=0,off=8,r=0,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=0,imm=0) R3=pkt_end(id=0,off=0,imm=0) R10=fp0,call_-1
5: R0=pkt(id=0,off=8,r=0,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=0,imm=0) R3=pkt_end(id=0,off=0,imm=0) R10=fp0,call_-1
5: (95) exit
6: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R10=fp0,call_-1
6: (71) r6 = *(u8 *)(r2 +0)
7: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R6_w=inv(id=0,umax_value=255,var_off=(0x0; 0xff)) R10=fp0,call_-1
7: (bf) r7 = r6
8: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R6_w=inv(id=0,umax_value=255,var_off=(0x0; 0xff)) R7_w=inv(id=0,umax_value=255,var_off=(0x0; 0xff)) R10=fp0,call_-1
8: (67) r6 <<= 2
9: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R6_w=inv(id=0,umax_value=1020,var_off=(0x0; 0x3fc)) R7_w=inv(id=0,umax_value=255,var_off=(0x0; 0xff)) R10=fp0,call_-1
9: (07) r6 += 14
10: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R6_w=inv(id=0,umin_value=14,umax_value=1034,var_off=(0x2; 0x7fc)) R7_w=inv(id=0,umax_value=255,var_off=(0x0; 0xff)) R10=fp0,call_-1
10: (67) r7 <<= 2
11: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R6_w=inv(id=0,umin_value=14,umax_value=1034,var_off=(0x2; 0x7fc)) R7_w=inv(id=0,umax_value=1020,var_off=(0x0; 0x3fc)) R10=fp0,call_-1
11: (1f) r6 -= r7
12: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R6=inv(id=0,smin_value=-1006,smax_value=1034,umin_value=2,umax_value=18446744073709551614,var_off=(0x2; 0xfffffffffffffffc)) R7=inv(id=0,umax_value=1020,var_off=(0x0; 0x3fc)) R10=fp0,call_-1
12: (75) if r6 s>= 0x0 goto pc+1
 R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R6=inv(id=0,umin_value=18446744073709550610,umax_value=18446744073709551614,var_off=(0xfffffffffffffc02; 0x3fc)) R7=inv(id=0,umax_value=1020,var_off=(0x0; 0x3fc)) R10=fp0,call_-1
13: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R6=inv(id=0,umin_value=18446744073709550610,umax_value=18446744073709551614,var_off=(0xfffffffffffffc02; 0x3fc)) R7=inv(id=0,umax_value=1020,var_off=(0x0; 0x3fc)) R10=fp0,call_-1
13: (95) exit
14: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R6=inv(id=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R7=inv(id=0,umax_value=1020,var_off=(0x0; 0x3fc)) R10=fp0,call_-1
14: (bf) r5 = r2
15: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R5_w=pkt(id=0,off=0,r=8,imm=0) R6=inv(id=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R7=inv(id=0,umax_value=1020,var_off=(0x0; 0x3fc)) R10=fp0,call_-1
15: (0f) r5 += r6
16: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R5_w=pkt(id=1,off=0,r=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R6=inv(id=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R7=inv(id=0,umax_value=1020,var_off=(0x0; 0x3fc)) R10=fp0,call_-1
16: (bf) r4 = r5
17: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R4_w=pkt(id=1,off=0,r=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R5_w=pkt(id=1,off=0,r=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R6=inv(id=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R7=inv(id=0,umax_value=1020,var_off=(0x0; 0x3fc)) R10=fp0,call_-1
17: (07) r4 += 4
18: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R4=pkt(id=1,off=4,r=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R5=pkt(id=1,off=0,r=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R6=inv(id=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R7=inv(id=0,umax_value=1020,var_off=(0x0; 0x3fc)) R10=fp0,call_-1
18: (3d) if r3 >= r4 goto pc+1
 R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R4=pkt(id=1,off=4,r=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R5=pkt(id=1,off=0,r=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R6=inv(id=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R7=inv(id=0,umax_value=1020,var_off=(0x0; 0x3fc)) R10=fp0,call_-1
19: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R4=pkt(id=1,off=4,r=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R5=pkt(id=1,off=0,r=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R6=inv(id=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R7=inv(id=0,umax_value=1020,var_off=(0x0; 0x3fc)) R10=fp0,call_-1
19: (95) exit
20: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R4=pkt(id=1,off=4,r=4,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R5=pkt(id=1,off=0,r=4,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R6=inv(id=0,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R7=inv(id=0,umax_value=1020,var_off=(0x0; 0x3fc)) R10=fp0,call_-1
20: (61) r6 = *(u32 *)(r5 +0)
21: R0=pkt(id=0,off=8,r=8,imm=0) R1=ctx(id=0,off=0,imm=0) R2=pkt(id=0,off=0,r=8,imm=0) R3=pkt_end(id=0,off=0,imm=0) R4=pkt(id=1,off=4,r=4,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R5=pkt(id=1,off=0,r=4,umin_value=2,umax_value=1034,var_off=(0x2; 0x7fc)) R6_w=inv(id=0,umax_value=4294967295,var_off=(0x0; 0xffffffff)) R7=inv(id=0,umax_value=1020,var_off=(0x0; 0x3fc)) R10=fp0,call_-1
21: (95) exit
processed 22 insns (limit 1000000), stack depth 0
FAIL
Test  11: pointer variable subtraction ... PASS
Results: 10 pass 2 fail




[重现概率]:
必现

[重现环境]:
环境信息:物理机

OS KERNEL: 
# uname -r
4.19.91-437.git.724e576d4.an8.x86_64

MEMORY:
# free -h
              total        used        free      shared  buff/cache   available
Mem:          125Gi       2.0Gi       117Gi       3.1Gi       6.2Gi       119Gi
Swap:         2.0Gi       2.0Mi       2.0G


CPU:
]# lscpu
Architecture:        x86_64
CPU op-mode(s):      32-bit, 64-bit
Byte Order:          Little Endian
CPU(s):              32
On-line CPU(s) list: 0-31
Thread(s) per core:  2
Core(s) per socket:  16
Socket(s):           1
NUMA node(s):        1
Vendor ID:           GenuineIntel
BIOS Vendor ID:      Intel
CPU family:          6
Model:               79
Model name:          Intel(R) Xeon(R) CPU E5-2682 v4 @ 2.50GHz
BIOS Model name:     Intel(R) Xeon(R) CPU E5-2682 v4 @ 2.50GHz
Stepping:            1
CPU MHz:             2494.430
CPU max MHz:         2500.0000
CPU min MHz:         1200.0000
BogoMIPS:            4988.69
Virtualization:      VT-x
L1d cache:           32K
L1i cache:           32K
L2 cache:            256K
L3 cache:            40960K
NUMA node0 CPU(s):   0-31
Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 cdp_l3 invpcid_single intel_ppin tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm rdt_a rdseed adx smap intel_pt xsaveopt cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm arat pln pts


# cat /etc/os-release
NAME="Anolis OS"
VERSION="8.6"
ID="anolis"
ID_LIKE="rhel fedora centos"
VERSION_ID="8.6"
PLATFORM_ID="platform:an8"
PRETTY_NAME="Anolis OS 8.6"
ANSI_COLOR="0;31"
HOME_URL="https://openanolis.cn/"

]# dmidecode -t 0
# dmidecode 3.3
Getting SMBIOS data from sysfs.
SMBIOS 3.0 present.

Handle 0x0000, DMI type 0, 24 bytes
BIOS Information
        Vendor: American Megatrends Inc.
        Version: 4.1.8
        Release Date: 07/02/2016
        Address: 0xF0000
        Runtime Size: 64 kB
        ROM Size: 8 MB
        Characteristics:
                PCI is supported
                BIOS is upgradeable
                BIOS shadowing is allowed
                Boot from CD is supported
                Selectable boot is supported
                BIOS ROM is socketed
                EDD is supported
                5.25"/1.2 MB floppy services are supported (int 13h)
                3.5"/720 kB floppy services are supported (int 13h)
                3.5"/2.88 MB floppy services are supported (int 13h)
                Print screen service is supported (int 5h)
                Serial services are supported (int 14h)
                Printer services are supported (int 17h)
                ACPI is supported
                USB legacy is supported
                BIOS boot specification is supported
                Targeted content distribution is supported
                UEFI is supported
        BIOS Revision: 5.6

[复现步骤]:
下载当前内核 对应的kernel*src.rpm,
rpm -ivh kernel*.src.rpm
which yum-builddep || yum install -y yum-utils
which rpmbuild || yum install -y rpm-build
yum-builddep -y $rpmbuild_dir/SPECS/kernel.spec
rpmbuild -bp $rpmbuild_dir/SPECS/kernel.spec

cd /root/rpmbuild/BUILD/kernel*/linux*/tools/testing/selftests/bpf
./test_align  --执行test_align用例

[期望结果]:
用例在任务中可以正常执行pass

[实际结果]:
用例在任务执行时失败


[原因分析]:
Test   9: dubious pointer arithmetic ... Failed to find match 7: R5=inv(id=0,var_off=(0x2; 0xfffffffffffffffc))

预期:R5=inv(id=0,var_off=(0x2; 0xfffffffffffffffc))
实际:R5=inv(id=0,smin_value=-9223372036854775806,smax_value=9223372036854775806,umin_value=2,umax_value=18446744073709551614,var_off=(0x2; 0xfffffffffffffffc))

Test  10: variable subtraction ... Failed to find match 12: R6=inv(id=0,smin_value=-1006,smax_value=1034,var_off=(0x2; 0xfffffffffffffffc))

预期:R6=inv(id=0,smin_value=-1006,smax_value=1034,var_off=(0x2; 0xfffffffffffffffc))
实际:R6=inv(id=0,smin_value=-1006,smax_value=1034,umin_value=2,umax_value=18446744073709551614,var_off=(0x2; 0xfffffffffffffffc))
Comment 1 wangpingping alibaba_cloud_group 2022-10-31 13:49:31 UTC
Anolis7 4.19内核有同样问题
# cat /etc/anolis-release
Anolis OS release 7.9
[root@VM20200706-46 bpf]# uname -r
4.19.91-26.6.an7.x86_64
Comment 2 wangpingping alibaba_cloud_group 2022-10-31 16:07:21 UTC
(In reply to wangpingping from comment #1)
> Anolis7 4.19内核有同样问题
> # cat /etc/anolis-release
> Anolis OS release 7.9
> [root@VM20200706-46 bpf]# uname -r
> 4.19.91-26.6.an7.x86_64

---以另外提缺陷跟踪:https://bugzilla.openanolis.cn/show_bug.cgi?id=2669
Comment 3 zhixin01 alibaba_cloud_group 2022-10-31 16:14:23 UTC
该问题与https://bugzilla.openanolis.cn/show_bug.cgi?id=2319问题相同,已修复
nightly目前用例一直PASS.已解决
https://tone.aliyun-inc.com/ws/6yddz4ne/test_result/113467