From e2164f0406db75cb1ae0bf49ae7915f0ab10e201 Mon Sep 17 00:00:00 2001 From: Arnaldo Carvalho de Melo Date: Fri, 8 May 2015 09:40:36 -0300 Subject: [PATCH] perf tools: Move mips barrier.h stuff to tools/arch/mips/include/asm/barrier.h We will need it for atomic.h, so move it from the ad-hoc tools/perf/ place to a tools/ subset of the kernel arch/ hierarchy. Cc: Adrian Hunter Cc: Borislav Petkov Cc: David Ahern Cc: Deng-Cheng Zhu Cc: Don Zickus Cc: Frederic Weisbecker Cc: Jiri Olsa Cc: Namhyung Kim Cc: Ralf Baechle Cc: Stephane Eranian Link: http://lkml.kernel.org/n/tip-c5a8m8lbjuy0agep6giykxbz@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo --- tools/arch/mips/include/asm/barrier.h | 20 ++++++++++++++++++++ tools/include/asm/barrier.h | 2 ++ tools/perf/MANIFEST | 1 + tools/perf/perf-sys.h | 9 --------- 4 files changed, 23 insertions(+), 9 deletions(-) create mode 100644 tools/arch/mips/include/asm/barrier.h diff --git a/tools/arch/mips/include/asm/barrier.h b/tools/arch/mips/include/asm/barrier.h new file mode 100644 index 0000000..80f96f7 --- /dev/null +++ b/tools/arch/mips/include/asm/barrier.h @@ -0,0 +1,20 @@ +#ifndef _TOOLS_LINUX_ASM_MIPS_BARRIER_H +#define _TOOLS_LINUX_ASM_MIPS_BARRIER_H +/* + * FIXME: This came from tools/perf/perf-sys.h, where it was first introduced + * in c1e028ef40b8d6943b767028ba17d4f2ba020edb, more work needed to make it + * more closely follow the Linux kernel arch/mips/include/asm/barrier.h file. + * Probably when we continue work on tools/ Kconfig support to have all the + * CONFIG_ needed for properly doing that. + */ +#define mb() asm volatile( \ + ".set mips2\n\t" \ + "sync\n\t" \ + ".set mips0" \ + : /* no output */ \ + : /* no input */ \ + : "memory") +#define wmb() mb() +#define rmb() mb() + +#endif /* _TOOLS_LINUX_ASM_MIPS_BARRIER_H */ diff --git a/tools/include/asm/barrier.h b/tools/include/asm/barrier.h index ccb2244..a00b948 100644 --- a/tools/include/asm/barrier.h +++ b/tools/include/asm/barrier.h @@ -14,6 +14,8 @@ #include "../../arch/sparc/include/asm/barrier.h" #elif defined(__alpha__) #include "../../arch/alpha/include/asm/barrier.h" +#elif defined(__mips__) +#include "../../arch/mips/include/asm/barrier.h" #elif defined(__ia64__) #include "../../arch/ia64/include/asm/barrier.h" #elif defined(__xtensa__) diff --git a/tools/perf/MANIFEST b/tools/perf/MANIFEST index 6d3c398..e4a7220 100644 --- a/tools/perf/MANIFEST +++ b/tools/perf/MANIFEST @@ -2,6 +2,7 @@ tools/perf tools/arch/alpha/include/asm/barrier.h tools/arch/arm/include/asm/barrier.h tools/arch/ia64/include/asm/barrier.h +tools/arch/mips/include/asm/barrier.h tools/arch/powerpc/include/asm/barrier.h tools/arch/s390/include/asm/barrier.h tools/arch/sh/include/asm/barrier.h diff --git a/tools/perf/perf-sys.h b/tools/perf/perf-sys.h index ebe228f..876001e 100644 --- a/tools/perf/perf-sys.h +++ b/tools/perf/perf-sys.h @@ -78,15 +78,6 @@ #endif #ifdef __mips__ -#define mb() asm volatile( \ - ".set mips2\n\t" \ - "sync\n\t" \ - ".set mips0" \ - : /* no output */ \ - : /* no input */ \ - : "memory") -#define wmb() mb() -#define rmb() mb() #define CPUINFO_PROC {"cpu model"} #endif -- 2.7.4