@@ -3918,6 +3918,7 @@ static struct bpf_test tests[] = {
3918
3918
},
3919
3919
.prog_type = BPF_PROG_TYPE_SCHED_CLS ,
3920
3920
.result = ACCEPT ,
3921
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
3921
3922
},
3922
3923
{
3923
3924
"direct packet access: test21 (x += pkt_ptr, 2)" ,
@@ -3943,6 +3944,7 @@ static struct bpf_test tests[] = {
3943
3944
},
3944
3945
.prog_type = BPF_PROG_TYPE_SCHED_CLS ,
3945
3946
.result = ACCEPT ,
3947
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
3946
3948
},
3947
3949
{
3948
3950
"direct packet access: test22 (x += pkt_ptr, 3)" ,
@@ -3973,6 +3975,7 @@ static struct bpf_test tests[] = {
3973
3975
},
3974
3976
.prog_type = BPF_PROG_TYPE_SCHED_CLS ,
3975
3977
.result = ACCEPT ,
3978
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
3976
3979
},
3977
3980
{
3978
3981
"direct packet access: test23 (x += pkt_ptr, 4)" ,
@@ -4025,6 +4028,7 @@ static struct bpf_test tests[] = {
4025
4028
},
4026
4029
.prog_type = BPF_PROG_TYPE_SCHED_CLS ,
4027
4030
.result = ACCEPT ,
4031
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
4028
4032
},
4029
4033
{
4030
4034
"direct packet access: test25 (marking on <, good access)" ,
@@ -7732,6 +7736,7 @@ static struct bpf_test tests[] = {
7732
7736
.result = ACCEPT ,
7733
7737
.prog_type = BPF_PROG_TYPE_SCHED_CLS ,
7734
7738
.retval = 0 /* csum_diff of 64-byte packet */ ,
7739
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
7735
7740
},
7736
7741
{
7737
7742
"helper access to variable memory: size = 0 not allowed on NULL (!ARG_PTR_TO_MEM_OR_NULL)" ,
@@ -9694,6 +9699,7 @@ static struct bpf_test tests[] = {
9694
9699
},
9695
9700
.result = ACCEPT ,
9696
9701
.prog_type = BPF_PROG_TYPE_XDP ,
9702
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
9697
9703
},
9698
9704
{
9699
9705
"XDP pkt read, pkt_data' > pkt_end, bad access 1" ,
@@ -9865,6 +9871,7 @@ static struct bpf_test tests[] = {
9865
9871
},
9866
9872
.result = ACCEPT ,
9867
9873
.prog_type = BPF_PROG_TYPE_XDP ,
9874
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
9868
9875
},
9869
9876
{
9870
9877
"XDP pkt read, pkt_end < pkt_data', bad access 1" ,
@@ -9977,6 +9984,7 @@ static struct bpf_test tests[] = {
9977
9984
},
9978
9985
.result = ACCEPT ,
9979
9986
.prog_type = BPF_PROG_TYPE_XDP ,
9987
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
9980
9988
},
9981
9989
{
9982
9990
"XDP pkt read, pkt_end >= pkt_data', bad access 1" ,
@@ -10034,6 +10042,7 @@ static struct bpf_test tests[] = {
10034
10042
},
10035
10043
.result = ACCEPT ,
10036
10044
.prog_type = BPF_PROG_TYPE_XDP ,
10045
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
10037
10046
},
10038
10047
{
10039
10048
"XDP pkt read, pkt_data' <= pkt_end, bad access 1" ,
@@ -10146,6 +10155,7 @@ static struct bpf_test tests[] = {
10146
10155
},
10147
10156
.result = ACCEPT ,
10148
10157
.prog_type = BPF_PROG_TYPE_XDP ,
10158
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
10149
10159
},
10150
10160
{
10151
10161
"XDP pkt read, pkt_meta' > pkt_data, bad access 1" ,
@@ -10317,6 +10327,7 @@ static struct bpf_test tests[] = {
10317
10327
},
10318
10328
.result = ACCEPT ,
10319
10329
.prog_type = BPF_PROG_TYPE_XDP ,
10330
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
10320
10331
},
10321
10332
{
10322
10333
"XDP pkt read, pkt_data < pkt_meta', bad access 1" ,
@@ -10429,6 +10440,7 @@ static struct bpf_test tests[] = {
10429
10440
},
10430
10441
.result = ACCEPT ,
10431
10442
.prog_type = BPF_PROG_TYPE_XDP ,
10443
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
10432
10444
},
10433
10445
{
10434
10446
"XDP pkt read, pkt_data >= pkt_meta', bad access 1" ,
@@ -10486,6 +10498,7 @@ static struct bpf_test tests[] = {
10486
10498
},
10487
10499
.result = ACCEPT ,
10488
10500
.prog_type = BPF_PROG_TYPE_XDP ,
10501
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
10489
10502
},
10490
10503
{
10491
10504
"XDP pkt read, pkt_meta' <= pkt_data, bad access 1" ,
@@ -12405,6 +12418,7 @@ static struct bpf_test tests[] = {
12405
12418
.prog_type = BPF_PROG_TYPE_SCHED_CLS ,
12406
12419
.result = ACCEPT ,
12407
12420
.retval = 1 ,
12421
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
12408
12422
},
12409
12423
{
12410
12424
"calls: pkt_ptr spill into caller stack 4" ,
@@ -12439,6 +12453,7 @@ static struct bpf_test tests[] = {
12439
12453
.prog_type = BPF_PROG_TYPE_SCHED_CLS ,
12440
12454
.result = ACCEPT ,
12441
12455
.retval = 1 ,
12456
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
12442
12457
},
12443
12458
{
12444
12459
"calls: pkt_ptr spill into caller stack 5" ,
@@ -12584,6 +12599,7 @@ static struct bpf_test tests[] = {
12584
12599
},
12585
12600
.prog_type = BPF_PROG_TYPE_SCHED_CLS ,
12586
12601
.result = ACCEPT ,
12602
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
12587
12603
},
12588
12604
{
12589
12605
"calls: pkt_ptr spill into caller stack 9" ,
@@ -13507,6 +13523,7 @@ static struct bpf_test tests[] = {
13507
13523
},
13508
13524
.prog_type = BPF_PROG_TYPE_SCHED_CLS ,
13509
13525
.result = ACCEPT ,
13526
+ .flags = F_NEEDS_EFFICIENT_UNALIGNED_ACCESS ,
13510
13527
},
13511
13528
{
13512
13529
"reference tracking in call: free reference in subprog" ,
0 commit comments