From c59f721c7377106888bff47064bf7da5a082e129 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Wed, 15 Jul 2015 15:22:48 -0700 Subject: Fix sparc build. * 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. --- ChangeLog | 10 ++++++++++ sysdeps/sparc/nptl/pthread_barrier_init.c | 1 + sysdeps/sparc/sparc32/sparcv9/Makefile | 5 +++++ sysdeps/sparc/sparc32/sparcv9/bits/atomic.h | 2 +- sysdeps/sparc/sparc64/Makefile | 5 +++++ sysdeps/sparc/sparc64/bits/atomic.h | 2 +- 6 files changed, 23 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index ffeb4d387f..b0eba065fd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2015-07-15 David S. Miller + + * 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 [BZ #17475] diff --git a/sysdeps/sparc/nptl/pthread_barrier_init.c b/sysdeps/sparc/nptl/pthread_barrier_init.c index 86ec7d0348..d13c32afbb 100644 --- a/sysdeps/sparc/nptl/pthread_barrier_init.c +++ b/sysdeps/sparc/nptl/pthread_barrier_init.c @@ -19,6 +19,7 @@ #include #include "pthreadP.h" #include +#include #include int diff --git a/sysdeps/sparc/sparc32/sparcv9/Makefile b/sysdeps/sparc/sparc32/sparcv9/Makefile index 925fa4ff73..fefc742478 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 2122afbb09..0ff5dcd69d 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 dfc118cfef..3a12510307 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 48b7fd6216..79f4a1d9be 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 () -- cgit 1.4.1