diff options
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | sysdeps/sparc/nptl/pthread_barrier_init.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/Makefile | 5 | ||||
-rw-r--r-- | sysdeps/sparc/sparc32/sparcv9/bits/atomic.h | 2 | ||||
-rw-r--r-- | sysdeps/sparc/sparc64/Makefile | 5 | ||||
-rw-r--r-- | sysdeps/sparc/sparc64/bits/atomic.h | 2 |
6 files changed, 23 insertions, 2 deletions
@@ -1,3 +1,13 @@ +2015-07-15 David S. Miller <davem@davemloft.net> + + * sysdeps/sparc/nptl/pthread_barrier_init.c: Include + futex-intenal.h + * sysdeps/sparc/sparc32/sparcv9/Makefile (nscd): Add cpu_relax. + * sysdeps/sparc/sparc64/Makefile: Likewise. + * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h (atomic_spin_nop): + Remove space from macro define. + * sysdeps/sparc/sparc64/bits/atomic.h (atomic_spin_nop): Likewise. + 2015-07-15 Pravin Satpute <psatpute@redhat.com> [BZ #17475] diff --git a/sysdeps/sparc/nptl/pthread_barrier_init.c b/sysdeps/sparc/nptl/pthread_barrier_init.c index 86ec7d0..d13c32a 100644 --- a/sysdeps/sparc/nptl/pthread_barrier_init.c +++ b/sysdeps/sparc/nptl/pthread_barrier_init.c @@ -19,6 +19,7 @@ #include <errno.h> #include "pthreadP.h" #include <lowlevellock.h> +#include <futex-internal.h> #include <sparc-nptl.h> int diff --git a/sysdeps/sparc/sparc32/sparcv9/Makefile b/sysdeps/sparc/sparc32/sparcv9/Makefile index 925fa4f..fefc742 100644 --- a/sysdeps/sparc/sparc32/sparcv9/Makefile +++ b/sysdeps/sparc/sparc32/sparcv9/Makefile @@ -14,6 +14,11 @@ ASFLAGS-.og += -Wa,-Av9a ASFLAGS-.oS += -Wa,-Av9a endif +# nscd uses atomic_spin_nop which in turn requires cpu_relax +ifeq ($(subdir),nscd) +routines += cpu_relax +endif + ifeq ($(subdir), nptl) libpthread-routines += cpu_relax endif diff --git a/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h b/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h index 2122afb..0ff5dcd 100644 --- a/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h +++ b/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h @@ -102,4 +102,4 @@ typedef uintmax_t uatomic_max_t; __asm __volatile ("membar #LoadStore | #StoreStore" : : : "memory") extern void __cpu_relax (void); -#define atomic_spin_nop () __cpu_relax () +#define atomic_spin_nop() __cpu_relax () diff --git a/sysdeps/sparc/sparc64/Makefile b/sysdeps/sparc/sparc64/Makefile index dfc118c..3a12510 100644 --- a/sysdeps/sparc/sparc64/Makefile +++ b/sysdeps/sparc/sparc64/Makefile @@ -10,6 +10,11 @@ ASFLAGS-.og += -Wa,-Av9d ASFLAGS-.oS += -Wa,-Av9d endif +# nscd uses atomic_spin_nop which in turn requires cpu_relax +ifeq ($(subdir),nscd) +routines += cpu_relax +endif + ifeq ($(subdir),nptl) libpthread-routines += cpu_relax endif diff --git a/sysdeps/sparc/sparc64/bits/atomic.h b/sysdeps/sparc/sparc64/bits/atomic.h index 48b7fd6..79f4a1d 100644 --- a/sysdeps/sparc/sparc64/bits/atomic.h +++ b/sysdeps/sparc/sparc64/bits/atomic.h @@ -123,4 +123,4 @@ typedef uintmax_t uatomic_max_t; __asm __volatile ("membar #LoadStore | #StoreStore" : : : "memory") extern void __cpu_relax (void); -#define atomic_spin_nop () __cpu_relax () +#define atomic_spin_nop() __cpu_relax () |