diff options
author | Andrii Nakryiko <andriin@fb.com> | 2020-06-12 12:45:04 -0700 |
---|---|---|
committer | Alexei Starovoitov <ast@kernel.org> | 2020-06-12 15:27:47 -0700 |
commit | caf62492f479585296e9d636c798d5ac256b7b04 (patch) | |
tree | 03150a668bc94cea09c896dbaa58d18266b7557d /tools/lib | |
parent | 22eb78792e07a4dfb63c85f34950d4e58eb90326 (diff) | |
download | linux-caf62492f479585296e9d636c798d5ac256b7b04.tar.gz linux-caf62492f479585296e9d636c798d5ac256b7b04.tar.bz2 linux-caf62492f479585296e9d636c798d5ac256b7b04.zip |
libbpf: Support pre-initializing .bss global variables
Remove invalid assumption in libbpf that .bss map doesn't have to be updated
in kernel. With addition of skeleton and memory-mapped initialization image,
.bss doesn't have to be all zeroes when BPF map is created, because user-code
might have initialized those variables from user-space.
Fixes: eba9c5f498a1 ("libbpf: Refactor global data map initialization")
Signed-off-by: Andrii Nakryiko <andriin@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20200612194504.557844-1-andriin@fb.com
Diffstat (limited to 'tools/lib')
-rw-r--r-- | tools/lib/bpf/libbpf.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c index 7f01be2b88b8..477c679ed945 100644 --- a/tools/lib/bpf/libbpf.c +++ b/tools/lib/bpf/libbpf.c @@ -3564,10 +3564,6 @@ bpf_object__populate_internal_map(struct bpf_object *obj, struct bpf_map *map) char *cp, errmsg[STRERR_BUFSIZE]; int err, zero = 0; - /* kernel already zero-initializes .bss map. */ - if (map_type == LIBBPF_MAP_BSS) - return 0; - err = bpf_map_update_elem(map->fd, &zero, map->mmaped, 0); if (err) { err = -errno; |