]> git.ipfire.org Git - thirdparty/iproute2.git/commitdiff
tc, bpf: use bind/type macros from gelf
authorDaniel Borkmann <daniel@iogearbox.net>
Sun, 7 Feb 2016 01:11:53 +0000 (02:11 +0100)
committerStephen Hemminger <stephen@networkplumber.org>
Sun, 7 Feb 2016 19:27:38 +0000 (11:27 -0800)
Don't reimplement them and rather use the macros from the gelf header,
that is, GELF_ST_BIND()/GELF_ST_TYPE().

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
tc/tc_bpf.c

index 5e80d0f98483d0bba2ad750ae4b0d37514d3f409..6a94894ff069ddf9738b93d6c0e41d6c687d15cf 100644 (file)
@@ -1162,9 +1162,6 @@ static int bpf_map_attach(const char *name, const struct bpf_elf_map *map,
        return fd;
 }
 
-#define __ELF_ST_BIND(x)       ((x) >> 4)
-#define __ELF_ST_TYPE(x)       (((unsigned int) x) & 0xf)
-
 static const char *bpf_str_tab_name(const struct bpf_elf_ctx *ctx,
                                    const GElf_Sym *sym)
 {
@@ -1180,8 +1177,8 @@ static const char *bpf_map_fetch_name(struct bpf_elf_ctx *ctx, int which)
                if (gelf_getsym(ctx->sym_tab, i, &sym) != &sym)
                        continue;
 
-               if (__ELF_ST_BIND(sym.st_info) != STB_GLOBAL ||
-                   __ELF_ST_TYPE(sym.st_info) != STT_NOTYPE ||
+               if (GELF_ST_BIND(sym.st_info) != STB_GLOBAL ||
+                   GELF_ST_TYPE(sym.st_info) != STT_NOTYPE ||
                    sym.st_shndx != ctx->sec_maps ||
                    sym.st_value / sizeof(struct bpf_elf_map) != which)
                        continue;