Messages in this thread | | | Date | Thu, 14 Mar 2013 08:34:18 +0100 | From | Ingo Molnar <> | Subject | Re: [PATCH v3] perf tools: Fix LIBNUMA build with glibc 2.12 and older. |
| |
* Vinson Lee <vlee@twitter.com> wrote:
> The tokens MADV_HUGEPAGE and MADV_NOHUGEPAGE are not available with > glibc 2.12 and older. Define these tokens if they are not already > defined. > > This patch fixes these build errors with older versions of glibc. > > CC bench/numa.o > bench/numa.c: In function ???alloc_data???: > bench/numa.c:334: error: ???MADV_HUGEPAGE??? undeclared (first use in this function) > bench/numa.c:334: error: (Each undeclared identifier is reported only once > bench/numa.c:334: error: for each function it appears in.) > bench/numa.c:341: error: ???MADV_NOHUGEPAGE??? undeclared (first use in this function) > make: *** [bench/numa.o] Error 1 > > Signed-off-by: Vinson Lee <vlee@twitter.com> > Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net> > Cc: Ingo Molnar <mingo@redhat.com> > Cc: Irina Tirdea <irina.tirdea@intel.com> > Cc: Paul Mackerras <paulus@samba.org> > Cc: Pekka Enberg <penberg@kernel.org> > Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> > --- > tools/perf/bench/bench.h | 24 ++++++++++++++++++++++++ > 1 files changed, 24 insertions(+), 0 deletions(-) > > diff --git a/tools/perf/bench/bench.h b/tools/perf/bench/bench.h > index a5223e6..c132ee7 100644 > --- a/tools/perf/bench/bench.h > +++ b/tools/perf/bench/bench.h > @@ -1,6 +1,30 @@ > #ifndef BENCH_H > #define BENCH_H > > +/* > + * The madvise transparent hugepage constants were added in glibc > + * 2.13. For compatibility with older versions of glibc, define these > + * tokens if they are not already defined. > + * > + * PA-RISC uses different madvise values from other architectures and > + * needs to be special-cased. > + */ > +#ifdef __hppa__ > +# ifndef MADV_HUGEPAGE > +# define MADV_HUGEPAGE 67 > +# endif > +# ifndef MADV_NOHUGEPAGE > +# define MADV_NOHUGEPAGE 68 > +# endif > +#else > +# ifndef MADV_HUGEPAGE > +# define MADV_HUGEPAGE 14 > +# endif > +# ifndef MADV_NOHUGEPAGE > +# define MADV_NOHUGEPAGE 15 > +# endif > +#endif
Thanks!
Acked-by: Ingo Molnar <mingo@kernel.org>
Arnaldo, will you be picking this up for perf/urgent, or should I?
Thanks,
Ingo
| |