Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4e31050f authored by Vinson Lee's avatar Vinson Lee Committed by Arnaldo Carvalho de Melo
Browse files

perf symbols: Define STT_GNU_IFUNC for glibc 2.9 and older.



The token STT_GNU_IFUNC is not available with glibc 2.9 and older.
Define this token if it is not already defined.

This patch fixes this build errors with older versions of glibc.

  CC       util/symbol-elf.o
util/symbol-elf.c: In function ‘elf_sym__is_function’:
util/symbol-elf.c:75: error: ‘STT_GNU_IFUNC’ undeclared (first use in this function)
util/symbol-elf.c:75: error: (Each undeclared identifier is reported only once
util/symbol-elf.c:75: error: for each function it appears in.)
make: *** [util/symbol-elf.o] Error 1

Signed-off-by: default avatarVinson Lee <vlee@twitter.com>
Acked-by: default avatarNamhyung Kim <namhyung@kernel.org>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Anton Blanchard <anton@samba.org>
Cc: Avi Kivity <avi@cloudius-systems.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Stephane Eranian <eranian@google.com>
Cc: Waiman Long <Waiman.Long@hp.com>
Cc: stable@vger.kernel.org # 3.17+
Link: http://lkml.kernel.org/r/1423528286-13630-1-git-send-email-vlee@twopensource.com


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 23773ca1
Loading
Loading
Loading
Loading
+4 −0
Original line number Original line Diff line number Diff line
@@ -69,6 +69,10 @@ static inline uint8_t elf_sym__type(const GElf_Sym *sym)
	return GELF_ST_TYPE(sym->st_info);
	return GELF_ST_TYPE(sym->st_info);
}
}


#ifndef STT_GNU_IFUNC
#define STT_GNU_IFUNC 10
#endif

static inline int elf_sym__is_function(const GElf_Sym *sym)
static inline int elf_sym__is_function(const GElf_Sym *sym)
{
{
	return (elf_sym__type(sym) == STT_FUNC ||
	return (elf_sym__type(sym) == STT_FUNC ||