]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
samples: bpf: rename struct bpf_map_def to avoid conflict with libbpf
authorJakub Kicinski <jakub.kicinski@netronome.com>
Thu, 10 May 2018 17:24:38 +0000 (10:24 -0700)
committerDaniel Borkmann <daniel@iogearbox.net>
Thu, 10 May 2018 23:40:51 +0000 (01:40 +0200)
Both tools/lib/bpf/libbpf.h and samples/bpf/bpf_load.h define their
own version of struct bpf_map_def.  The version in bpf_load.h has
more fields.  libbpf does not support inner maps and its definition
of struct bpf_map_def lacks the related fields.  Rename the definition
in bpf_load.h (samples/bpf) to avoid conflicts.

Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Reviewed-by: Quentin Monnet <quentin.monnet@netronome.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
samples/bpf/bpf_load.c
samples/bpf/bpf_load.h

index da9bccfaf3914a0e17c07651bafd425b99551e10..a6b290de5632b6b9f4f41834c5da0c1ff5b06690 100644 (file)
@@ -420,7 +420,7 @@ static int load_elf_maps_section(struct bpf_map_data *maps, int maps_shndx,
 
        /* Keeping compatible with ELF maps section changes
         * ------------------------------------------------
-        * The program size of struct bpf_map_def is known by loader
+        * The program size of struct bpf_load_map_def is known by loader
         * code, but struct stored in ELF file can be different.
         *
         * Unfortunately sym[i].st_size is zero.  To calculate the
@@ -429,7 +429,7 @@ static int load_elf_maps_section(struct bpf_map_data *maps, int maps_shndx,
         * symbols.
         */
        map_sz_elf = data_maps->d_size / nr_maps;
-       map_sz_copy = sizeof(struct bpf_map_def);
+       map_sz_copy = sizeof(struct bpf_load_map_def);
        if (map_sz_elf < map_sz_copy) {
                /*
                 * Backward compat, loading older ELF file with
@@ -448,8 +448,8 @@ static int load_elf_maps_section(struct bpf_map_data *maps, int maps_shndx,
 
        /* Memcpy relevant part of ELF maps data to loader maps */
        for (i = 0; i < nr_maps; i++) {
+               struct bpf_load_map_def *def;
                unsigned char *addr, *end;
-               struct bpf_map_def *def;
                const char *map_name;
                size_t offset;
 
@@ -464,9 +464,9 @@ static int load_elf_maps_section(struct bpf_map_data *maps, int maps_shndx,
 
                /* Symbol value is offset into ELF maps section data area */
                offset = sym[i].st_value;
-               def = (struct bpf_map_def *)(data_maps->d_buf + offset);
+               def = (struct bpf_load_map_def *)(data_maps->d_buf + offset);
                maps[i].elf_offset = offset;
-               memset(&maps[i].def, 0, sizeof(struct bpf_map_def));
+               memset(&maps[i].def, 0, sizeof(struct bpf_load_map_def));
                memcpy(&maps[i].def, def, map_sz_copy);
 
                /* Verify no newer features were requested */
index 2c3d0b448632743c09efed8863b192a2607e5962..f9da59bca0cc6a4939f222031c17e3135323dc52 100644 (file)
@@ -7,7 +7,7 @@
 #define MAX_MAPS 32
 #define MAX_PROGS 32
 
-struct bpf_map_def {
+struct bpf_load_map_def {
        unsigned int type;
        unsigned int key_size;
        unsigned int value_size;
@@ -21,7 +21,7 @@ struct bpf_map_data {
        int fd;
        char *name;
        size_t elf_offset;
-       struct bpf_map_def def;
+       struct bpf_load_map_def def;
 };
 
 typedef void (*fixup_map_cb)(struct bpf_map_data *map, int idx);