diff options
Diffstat (limited to 'kernel/bpf/arraymap.c')
-rw-r--r-- | kernel/bpf/arraymap.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/kernel/bpf/arraymap.c b/kernel/bpf/arraymap.c index 25632a75d630..d6d979910a2a 100644 --- a/kernel/bpf/arraymap.c +++ b/kernel/bpf/arraymap.c | |||
@@ -270,9 +270,10 @@ static int array_map_update_elem(struct bpf_map *map, void *key, void *value, | |||
270 | memcpy(this_cpu_ptr(array->pptrs[index & array->index_mask]), | 270 | memcpy(this_cpu_ptr(array->pptrs[index & array->index_mask]), |
271 | value, map->value_size); | 271 | value, map->value_size); |
272 | else | 272 | else |
273 | memcpy(array->value + | 273 | copy_map_value(map, |
274 | array->elem_size * (index & array->index_mask), | 274 | array->value + |
275 | value, map->value_size); | 275 | array->elem_size * (index & array->index_mask), |
276 | value); | ||
276 | return 0; | 277 | return 0; |
277 | } | 278 | } |
278 | 279 | ||