]> Git Repo - linux.git/commitdiff
perf tools: Work around lack of sched_getcpu in glibc < 2.6.
authorVinson Lee <[email protected]>
Mon, 23 Mar 2015 19:09:16 +0000 (12:09 -0700)
committerArnaldo Carvalho de Melo <[email protected]>
Tue, 24 Mar 2015 15:08:07 +0000 (12:08 -0300)
This patch fixes this build error with glibc < 2.6.

  CC       util/cloexec.o
cc1: warnings being treated as errors
util/cloexec.c: In function ‘perf_flag_probe’:
util/cloexec.c:24: error: implicit declaration of function
‘sched_getcpu’
util/cloexec.c:24: error: nested extern declaration of ‘sched_getcpu’
make: *** [util/cloexec.o] Error 1

Signed-off-by: Vinson Lee <[email protected]>
Acked-by: Jiri Olsa <[email protected]>
Acked-by: Namhyung Kim <[email protected]>
Cc: Adrian Hunter <[email protected]>
Cc: Masami Hiramatsu <[email protected]>
Cc: Paul Mackerras <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Yann Droneaud <[email protected]>
Cc: [email protected] # 3.18+
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
tools/perf/util/cloexec.c
tools/perf/util/cloexec.h

index 6da965bdbc2caf8762b5018c6837422a00aac456..85b523885f9d70d3e708cb0688e4933b43a1f388 100644 (file)
@@ -7,6 +7,12 @@
 
 static unsigned long flag = PERF_FLAG_FD_CLOEXEC;
 
+int __weak sched_getcpu(void)
+{
+       errno = ENOSYS;
+       return -1;
+}
+
 static int perf_flag_probe(void)
 {
        /* use 'safest' configuration as used in perf_evsel__fallback() */
index 94a5a7d829d5ba32efe646f9c04729ab363ac593..68888c29b04a3fe2e8a44bd5debd233f191576ab 100644 (file)
@@ -3,4 +3,10 @@
 
 unsigned long perf_event_open_cloexec_flag(void);
 
+#ifdef __GLIBC_PREREQ
+#if !__GLIBC_PREREQ(2, 6)
+extern int sched_getcpu(void) __THROW;
+#endif
+#endif
+
 #endif /* __PERF_CLOEXEC_H */
This page took 0.053856 seconds and 4 git commands to generate.