qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 1.0] configure: tighten pie toolchain support test for tls variables
@ 2011-11-23  9:24 Avi Kivity
  2011-11-23 21:02 ` Brad
  2011-11-28 22:36 ` Anthony Liguori
  0 siblings, 2 replies; 3+ messages in thread
From: Avi Kivity @ 2011-11-23  9:24 UTC (permalink / raw)
  To: Anthony Liguori, qemu-devel; +Cc: Paolo Bonzini, Gerd Hoffmann, Brad

Some toolchains don't support pie properly when tls variables are
in use.  Disallow pie when such toolchains are detected.

Signed-off-by: Avi Kivity <avi@redhat.com>
---

v3: only check __thread on Linux, where we require it, and where the
    toolchain fails

v2: give tls_var a type; avoids invisible warning

 configure |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/configure b/configure
index 75e1f10..1a2c55f 100755
--- a/configure
+++ b/configure
@@ -1120,7 +1120,17 @@ fi
 
 if test "$pie" != "no" ; then
   cat > $TMPC << EOF
-int main(void) { return 0; }
+
+#ifdef __linux__
+#  define THREAD __thread
+#else
+#  define THREAD
+#endif
+
+static THREAD int tls_var;
+
+int main(void) { return tls_var; }
+
 EOF
   if compile_prog "-fPIE -DPIE" "-pie"; then
     QEMU_CFLAGS="-fPIE -DPIE $QEMU_CFLAGS"
-- 
1.7.7.1

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] [PATCH v3 1.0] configure: tighten pie toolchain support test for tls variables
  2011-11-23  9:24 [Qemu-devel] [PATCH v3 1.0] configure: tighten pie toolchain support test for tls variables Avi Kivity
@ 2011-11-23 21:02 ` Brad
  2011-11-28 22:36 ` Anthony Liguori
  1 sibling, 0 replies; 3+ messages in thread
From: Brad @ 2011-11-23 21:02 UTC (permalink / raw)
  To: Avi Kivity; +Cc: Paolo Bonzini, qemu-devel, Gerd Hoffmann

On 23/11/11 4:24 AM, Avi Kivity wrote:
> Some toolchains don't support pie properly when tls variables are
> in use.  Disallow pie when such toolchains are detected.
>
> Signed-off-by: Avi Kivity<avi@redhat.com>

Thanks. Works as expected now.

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] [PATCH v3 1.0] configure: tighten pie toolchain support test for tls variables
  2011-11-23  9:24 [Qemu-devel] [PATCH v3 1.0] configure: tighten pie toolchain support test for tls variables Avi Kivity
  2011-11-23 21:02 ` Brad
@ 2011-11-28 22:36 ` Anthony Liguori
  1 sibling, 0 replies; 3+ messages in thread
From: Anthony Liguori @ 2011-11-28 22:36 UTC (permalink / raw)
  To: Avi Kivity; +Cc: Paolo Bonzini, Brad, qemu-devel, Gerd Hoffmann

On 11/23/2011 03:24 AM, Avi Kivity wrote:
> Some toolchains don't support pie properly when tls variables are
> in use.  Disallow pie when such toolchains are detected.
>
> Signed-off-by: Avi Kivity<avi@redhat.com>

Applied. Thanks.

Regards,

Anthony Liguori

> ---
>
> v3: only check __thread on Linux, where we require it, and where the
>      toolchain fails
>
> v2: give tls_var a type; avoids invisible warning
>
>   configure |   12 +++++++++++-
>   1 files changed, 11 insertions(+), 1 deletions(-)
>
> diff --git a/configure b/configure
> index 75e1f10..1a2c55f 100755
> --- a/configure
> +++ b/configure
> @@ -1120,7 +1120,17 @@ fi
>
>   if test "$pie" != "no" ; then
>     cat>  $TMPC<<  EOF
> -int main(void) { return 0; }
> +
> +#ifdef __linux__
> +#  define THREAD __thread
> +#else
> +#  define THREAD
> +#endif
> +
> +static THREAD int tls_var;
> +
> +int main(void) { return tls_var; }
> +
>   EOF
>     if compile_prog "-fPIE -DPIE" "-pie"; then
>       QEMU_CFLAGS="-fPIE -DPIE $QEMU_CFLAGS"

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-11-28 22:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-23  9:24 [Qemu-devel] [PATCH v3 1.0] configure: tighten pie toolchain support test for tls variables Avi Kivity
2011-11-23 21:02 ` Brad
2011-11-28 22:36 ` Anthony Liguori

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).