diff options
Diffstat (limited to 'kernel/bpf/bpf_local_storage.c')
| -rw-r--r-- | kernel/bpf/bpf_local_storage.c | 8 | 
1 files changed, 4 insertions, 4 deletions
diff --git a/kernel/bpf/bpf_local_storage.c b/kernel/bpf/bpf_local_storage.c index b39a46e8fb08..35f4138a54dc 100644 --- a/kernel/bpf/bpf_local_storage.c +++ b/kernel/bpf/bpf_local_storage.c @@ -568,8 +568,8 @@ static struct bpf_local_storage_map *__bpf_local_storage_map_alloc(union bpf_att  	nbuckets = max_t(u32, 2, nbuckets);  	smap->bucket_log = ilog2(nbuckets); -	smap->buckets = kvcalloc(sizeof(*smap->buckets), nbuckets, -				 GFP_USER | __GFP_NOWARN | __GFP_ACCOUNT); +	smap->buckets = bpf_map_kvcalloc(&smap->map, sizeof(*smap->buckets), +					 nbuckets, GFP_USER | __GFP_NOWARN);  	if (!smap->buckets) {  		bpf_map_area_free(smap);  		return ERR_PTR(-ENOMEM); @@ -580,8 +580,8 @@ static struct bpf_local_storage_map *__bpf_local_storage_map_alloc(union bpf_att  		raw_spin_lock_init(&smap->buckets[i].lock);  	} -	smap->elem_size = -		sizeof(struct bpf_local_storage_elem) + attr->value_size; +	smap->elem_size = offsetof(struct bpf_local_storage_elem, +				   sdata.data[attr->value_size]);  	return smap;  }  | 
