Mi On June 8, 2020 2:32:16 PM GMT-03:00, Andrii Nakryiko <andrii.nakryiko@xxxxxxxxx> wrote: >On Mon, Jun 8, 2020 at 9:11 AM Arnaldo Carvalho de Melo ><arnaldo.melo@xxxxxxxxx> wrote: >> >> Hi Andrii, >> >> We've got that hashmap.[ch] copy from libbpf so that we can >> build perf in systems where libbpf isn't available, and to make it >build >> in all the containers I regularly test build perf I had to add the >patch >> below, I test build with many versions of both gcc and clang and >> multiple libcs. >> >> https://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html >> >> The way that tools/include/linux/bitops.h has been doing since 2012 >is >> explained in: >> >> http://git.kernel.org/torvalds/c/3f34f6c0233ae055b5 >> >> Please take a look and see if you find it acceptable, >> >> Thanks, >> >> - Arnaldo >> >> Warning: Kernel ABI header at 'tools/perf/util/hashmap.h' differs >from latest version at 'tools/lib/bpf/hashmap.h' >> diff -u tools/perf/util/hashmap.h tools/lib/bpf/hashmap.h >> >> $ diff -u tools/lib/bpf/hashmap.h tools/perf/util/hashmap.h >> --- tools/lib/bpf/hashmap.h 2020-06-05 13:25:27.822079838 -0300 >> +++ tools/perf/util/hashmap.h 2020-06-05 13:25:27.838079794 -0300 >> @@ -10,10 +10,9 @@ >> >> #include <stdbool.h> >> #include <stddef.h> >> -#ifdef __GLIBC__ >> -#include <bits/wordsize.h> >> -#else >> -#include <bits/reg.h> >> +#include <limits.h> >> +#ifndef __WORDSIZE >> +#define __WORDSIZE (__SIZEOF_LONG__ * 8) >> #endif > >This looks fine, I also build-tested it in Travis CI, so all good. >There is actually __SIZEOF_SIZE_T__, which is more directly what >hash_bits work with, but I don't think it matters for any reasonable >system in use :) > >So yeah, > >Acked-by: Andrii Nakryiko <andriin@xxxxxx> > >Are you going to do this change for libbpf's variant, or should I >submit a separate patch? I'll send the patch later, Thanks for checking, - Arnaldo > >> >> static inline size_t hash_bits(size_t h, int bits) -- Sent from my Android device with K-9 Mail. Please excuse my brevity.