linux-user: Remove THREAD macro

Message ID 20180213132246.26844-1-peter.maydell@linaro.org
State New
Headers show
Series
  • linux-user: Remove THREAD macro
Related show

Commit Message

Peter Maydell Feb. 13, 2018, 1:22 p.m.
Back when we used to support compiling either with or without
NPTL threading library support, we used a macro THREAD which would
expand either to nothing (no thread support) or to __thread (threads
supported). For a long time now we have required thread support,
so remove the macro and just use __thread directly as other parts
of QEMU do.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

---
 linux-user/qemu.h | 4 +---
 linux-user/main.c | 2 +-
 2 files changed, 2 insertions(+), 4 deletions(-)

-- 
2.16.1

Comments

Laurent Vivier Feb. 13, 2018, 3:17 p.m. | #1
Le 13/02/2018 à 14:22, Peter Maydell a écrit :
> Back when we used to support compiling either with or without

> NPTL threading library support, we used a macro THREAD which would

> expand either to nothing (no thread support) or to __thread (threads

> supported). For a long time now we have required thread support,

> so remove the macro and just use __thread directly as other parts

> of QEMU do.

> 

> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

> ---

>  linux-user/qemu.h | 4 +---

>  linux-user/main.c | 2 +-

>  2 files changed, 2 insertions(+), 4 deletions(-)


Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Richard Henderson Feb. 13, 2018, 3:32 p.m. | #2
On 02/13/2018 05:22 AM, Peter Maydell wrote:
> Back when we used to support compiling either with or without

> NPTL threading library support, we used a macro THREAD which would

> expand either to nothing (no thread support) or to __thread (threads

> supported). For a long time now we have required thread support,

> so remove the macro and just use __thread directly as other parts

> of QEMU do.

> 

> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

> ---

>  linux-user/qemu.h | 4 +---

>  linux-user/main.c | 2 +-

>  2 files changed, 2 insertions(+), 4 deletions(-)


Reviewed-by: Richard Henderson <richard.henderson@linaro.org>



r~
Laurent Vivier Feb. 15, 2018, 1:34 p.m. | #3
Le 13/02/2018 à 14:22, Peter Maydell a écrit :
> Back when we used to support compiling either with or without

> NPTL threading library support, we used a macro THREAD which would

> expand either to nothing (no thread support) or to __thread (threads

> supported). For a long time now we have required thread support,

> so remove the macro and just use __thread directly as other parts

> of QEMU do.

> 

> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

> ---

>  linux-user/qemu.h | 4 +---

>  linux-user/main.c | 2 +-

>  2 files changed, 2 insertions(+), 4 deletions(-)

> 


Applied to my 'linux-user-for-2.12' branch.

Thanks,
Laurent

Patch

diff --git a/linux-user/qemu.h b/linux-user/qemu.h
index 4edd7d0c08..bc4bf35036 100644
--- a/linux-user/qemu.h
+++ b/linux-user/qemu.h
@@ -18,8 +18,6 @@ 
 #include "exec/gdbstub.h"
 #include "qemu/queue.h"
 
-#define THREAD __thread
-
 /* This is the size of the host kernel's sigset_t, needed where we make
  * direct system calls that take a sigset_t pointer and a size.
  */
@@ -201,7 +199,7 @@  abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
                     abi_long arg5, abi_long arg6, abi_long arg7,
                     abi_long arg8);
 void gemu_log(const char *fmt, ...) GCC_FMT_ATTR(1, 2);
-extern THREAD CPUState *thread_cpu;
+extern __thread CPUState *thread_cpu;
 void cpu_loop(CPUArchState *env);
 const char *target_strerror(int err);
 int get_osversion(void);
diff --git a/linux-user/main.c b/linux-user/main.c
index 7de0e02487..fd7900628b 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
@@ -3835,7 +3835,7 @@  void cpu_loop(CPUHPPAState *env)
 
 #endif /* TARGET_HPPA */
 
-THREAD CPUState *thread_cpu;
+__thread CPUState *thread_cpu;
 
 bool qemu_cpu_is_self(CPUState *cpu)
 {