Răsfoiți Sursa

MIPS: Use generic atomic64 for 32-bit kernels

The 64-bit kernel has already had its atomic64 functions. Except for that,
we use the generic spinlocked version. The atomic64 types and related
functions are needed for the Linux performance counter subsystem.

Signed-off-by: Deng-Cheng Zhu <dengcheng.zhu@gmail.com>
To: linux-mips@linux-mips.org
Cc: a.p.zijlstra@chello.nl
Cc: paulus@samba.org
Cc: mingo@elte.hu
Cc: acme@redhat.com
Cc: jamie.iles@picochip.com
Patchwork: https://patchwork.linux-mips.org/patch/1361/
Acked-by: David Daney <ddaney@caviumnetworks.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Deng-Cheng Zhu 15 ani în urmă
părinte
comite
2b78920d19
2 a modificat fișierele cu 5 adăugiri și 0 ștergeri
  1. 1 0
      arch/mips/Kconfig
  2. 4 0
      arch/mips/include/asm/atomic.h

+ 1 - 0
arch/mips/Kconfig

@@ -13,6 +13,7 @@ config MIPS
 	select HAVE_KPROBES
 	select HAVE_KPROBES
 	select HAVE_KRETPROBES
 	select HAVE_KRETPROBES
 	select RTC_LIB if !MACH_LOONGSON
 	select RTC_LIB if !MACH_LOONGSON
+	select GENERIC_ATOMIC64 if !64BIT
 
 
 mainmenu "Linux/MIPS Kernel Configuration"
 mainmenu "Linux/MIPS Kernel Configuration"
 
 

+ 4 - 0
arch/mips/include/asm/atomic.h

@@ -782,6 +782,10 @@ static __inline__ int atomic64_add_unless(atomic64_t *v, long a, long u)
  */
  */
 #define atomic64_add_negative(i, v) (atomic64_add_return(i, (v)) < 0)
 #define atomic64_add_negative(i, v) (atomic64_add_return(i, (v)) < 0)
 
 
+#else /* !CONFIG_64BIT */
+
+#include <asm-generic/atomic64.h>
+
 #endif /* CONFIG_64BIT */
 #endif /* CONFIG_64BIT */
 
 
 /*
 /*