@@ -367,11 +367,10 @@ BTF_SET_START(test_sk_ret_null_kfunc_ids)
367
367
BTF_ID (func , bpf_kfunc_call_test_acquire )
368
368
BTF_SET_END (test_sk_ret_null_kfunc_ids )
369
369
370
- static void * bpf_test_init (const union bpf_attr * kattr , u32 size ,
371
- u32 headroom , u32 tailroom )
370
+ static void * bpf_test_init (const union bpf_attr * kattr , u32 user_size ,
371
+ u32 size , u32 headroom , u32 tailroom )
372
372
{
373
373
void __user * data_in = u64_to_user_ptr (kattr -> test .data_in );
374
- u32 user_size = kattr -> test .data_size_in ;
375
374
void * data ;
376
375
377
376
if (size < ETH_HLEN || size > PAGE_SIZE - headroom - tailroom )
@@ -699,7 +698,8 @@ int bpf_prog_test_run_skb(struct bpf_prog *prog, const union bpf_attr *kattr,
699
698
if (kattr -> test .flags || kattr -> test .cpu )
700
699
return - EINVAL ;
701
700
702
- data = bpf_test_init (kattr , size , NET_SKB_PAD + NET_IP_ALIGN ,
701
+ data = bpf_test_init (kattr , kattr -> test .data_size_in ,
702
+ size , NET_SKB_PAD + NET_IP_ALIGN ,
703
703
SKB_DATA_ALIGN (sizeof (struct skb_shared_info )));
704
704
if (IS_ERR (data ))
705
705
return PTR_ERR (data );
@@ -908,7 +908,8 @@ int bpf_prog_test_run_xdp(struct bpf_prog *prog, const union bpf_attr *kattr,
908
908
/* XDP have extra tailroom as (most) drivers use full page */
909
909
max_data_sz = 4096 - headroom - tailroom ;
910
910
911
- data = bpf_test_init (kattr , max_data_sz , headroom , tailroom );
911
+ data = bpf_test_init (kattr , kattr -> test .data_size_in ,
912
+ max_data_sz , headroom , tailroom );
912
913
if (IS_ERR (data )) {
913
914
ret = PTR_ERR (data );
914
915
goto free_ctx ;
@@ -994,7 +995,7 @@ int bpf_prog_test_run_flow_dissector(struct bpf_prog *prog,
994
995
if (size < ETH_HLEN )
995
996
return - EINVAL ;
996
997
997
- data = bpf_test_init (kattr , size , 0 , 0 );
998
+ data = bpf_test_init (kattr , kattr -> test . data_size_in , size , 0 , 0 );
998
999
if (IS_ERR (data ))
999
1000
return PTR_ERR (data );
1000
1001
0 commit comments