All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] package/iozone: Build non-threads version if !BR2_PTHREADS_NATIVE
@ 2013-07-12  7:44 Mischa Jonker
  2013-07-12  8:04 ` Thomas Petazzoni
  0 siblings, 1 reply; 7+ messages in thread
From: Mischa Jonker @ 2013-07-12  7:44 UTC (permalink / raw)
  To: buildroot

iozone uses pthread_setaffinity_np, which is not supported
in Linuxthreads.

Signed-off-by: Mischa Jonker <mjonker@synopsys.com>
---
 package/iozone/iozone.mk |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package/iozone/iozone.mk b/package/iozone/iozone.mk
index 328a526..c985141 100644
--- a/package/iozone/iozone.mk
+++ b/package/iozone/iozone.mk
@@ -12,7 +12,7 @@ IOZONE_LICENSE = IOzone license (NO DERIVED WORKS ALLOWED)
 # http://www.iozone.org/docs/Iozone_License.txt
 
 # No threading target is non-AIO as well
-ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),)
+ifeq ($(BR2_PTHREADS_NATIVE),)
 IOZONE_TARGET = linux-noth
 # AIO support not available on uClibc, use the linux (non-aio) target.
 else ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
-- 
1.7.9.5

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

* [Buildroot] [PATCH] package/iozone: Build non-threads version if !BR2_PTHREADS_NATIVE
  2013-07-12  7:44 [Buildroot] [PATCH] package/iozone: Build non-threads version if !BR2_PTHREADS_NATIVE Mischa Jonker
@ 2013-07-12  8:04 ` Thomas Petazzoni
  2013-07-12  8:06   ` Mischa Jonker
  0 siblings, 1 reply; 7+ messages in thread
From: Thomas Petazzoni @ 2013-07-12  8:04 UTC (permalink / raw)
  To: buildroot

Dear Mischa Jonker,

On Fri, 12 Jul 2013 09:44:32 +0200, Mischa Jonker wrote:

>  # No threading target is non-AIO as well
> -ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),)
> +ifeq ($(BR2_PTHREADS_NATIVE),)
>  IOZONE_TARGET = linux-noth
>  # AIO support not available on uClibc, use the linux (non-aio) target.
>  else ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)

BR2_PTHREADS_NATIVE is a Config.in option that only makes sense in the
context of the internal toolchain backend. So any usage of it in
package/ is going to not be suitable for external toolchain usage. So
your change, as is, would disable thread support in IOZone for any
external toolchain.

Best regards,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

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

* [Buildroot] [PATCH] package/iozone: Build non-threads version if !BR2_PTHREADS_NATIVE
  2013-07-12  8:04 ` Thomas Petazzoni
@ 2013-07-12  8:06   ` Mischa Jonker
  2013-07-12  8:14     ` Thomas Petazzoni
  0 siblings, 1 reply; 7+ messages in thread
From: Mischa Jonker @ 2013-07-12  8:06 UTC (permalink / raw)
  To: buildroot

Hi Thomas,

> BR2_PTHREADS_NATIVE is a Config.in option that only makes sense in the
> context of the internal toolchain backend. So any usage of it in package/ is
> going to not be suitable for external toolchain usage. So your change, as is,
> would disable thread support in IOZone for any external toolchain.

Should we add a BR2_TOOLCHAIN_HAS_THREADS_NATIVE to toolchain/toolchain-common.in? Or do you have another suggestion?

Mischa

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

* [Buildroot] [PATCH] package/iozone: Build non-threads version if !BR2_PTHREADS_NATIVE
  2013-07-12  8:06   ` Mischa Jonker
@ 2013-07-12  8:14     ` Thomas Petazzoni
  2013-07-12  8:27       ` Mischa Jonker
  0 siblings, 1 reply; 7+ messages in thread
From: Thomas Petazzoni @ 2013-07-12  8:14 UTC (permalink / raw)
  To: buildroot

Dear Mischa Jonker,

On Fri, 12 Jul 2013 08:06:36 +0000, Mischa Jonker wrote:

> > BR2_PTHREADS_NATIVE is a Config.in option that only makes sense in the
> > context of the internal toolchain backend. So any usage of it in package/ is
> > going to not be suitable for external toolchain usage. So your change, as is,
> > would disable thread support in IOZone for any external toolchain.
> 
> Should we add a BR2_TOOLCHAIN_HAS_THREADS_NATIVE to toolchain/toolchain-common.in? Or do you have another suggestion?

Yes, I believe that's the only solution. In fact, it could also be used
instead of the BR2_TOOLCHAIN_LIBC_NEEDS_THREE_STAGE_BUILD that's being
added by my proposed patch "[PATCH] toolchain-internal: skip
gcc-intermediate when possible".

Best regards,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

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

* [Buildroot] [PATCH] package/iozone: Build non-threads version if !BR2_PTHREADS_NATIVE
  2013-07-12  8:14     ` Thomas Petazzoni
@ 2013-07-12  8:27       ` Mischa Jonker
  0 siblings, 0 replies; 7+ messages in thread
From: Mischa Jonker @ 2013-07-12  8:27 UTC (permalink / raw)
  To: buildroot

Thomas wrote:

>> Should we add a BR2_TOOLCHAIN_HAS_THREADS_NATIVE to
>> toolchain/toolchain-
> common.in? Or do you have another suggestion?
> 
> Yes, I believe that's the only solution. In fact, it could also be
> used instead of the BR2_TOOLCHAIN_LIBC_NEEDS_THREE_STAGE_BUILD that's
> being added by my proposed patch "[PATCH] toolchain-internal: skip
> gcc-intermediate when possible".

Do you think that it's a safe assumption that GLIBC toolchains have NPTL? (just like BR2_TOOLCHAIN_HAS_THREADS is selected already if BR2_TOOLCHAIN_USES_GLIBC).

Mischa

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

* [Buildroot] [PATCH] package/iozone: Build non-threads version if !BR2_PTHREADS_NATIVE
  2013-07-12  7:42 Mischa Jonker
@ 2013-07-12  7:49 ` Mischa Jonker
  0 siblings, 0 replies; 7+ messages in thread
From: Mischa Jonker @ 2013-07-12  7:49 UTC (permalink / raw)
  To: buildroot

Mischa wrote:
> iozone uses pthread_setaffinity_np, which is not supported in Linuxthreads.
> 
> Signed-off-by: Mischa Jonker <mjonker@synopsys.com>
> ---
>  package/iozone/Config.in |    1 +
>  package/iozone/iozone.mk |    2 +-
>  2 files changed, 2 insertions(+), 1 deletion(-)
> diff --git a/package/iozone/Config.in b/package/iozone/Config.in index
> 26d4daa..9dc4f72 100644
> --- a/package/iozone/Config.in
> +++ b/package/iozone/Config.in
> @@ -1,6 +1,7 @@
>  config BR2_PACKAGE_IOZONE 	bool "iozone" 	depends on BR2_USE_MMU #
>  fork() +	depends on BR2_PTHREADS_NATIVE # pthread_setaffinity_np()
>  	help 	  IOzone is a filesystem benchmark tool. 	  The benchmark
>  generates and measures a variety of file operations
> diff --git a/package/iozone/iozone.mk b/package/iozone/iozone.mk index
> 328a526..c985141 100644
> --- a/package/iozone/iozone.mk
> +++ b/package/iozone/iozone.mk
> @@ -12,7 +12,7 @@ IOZONE_LICENSE = IOzone license (NO DERIVED WORKS
> ALLOWED) # http://www.iozone.org/docs/Iozone_License.txt
> 
>  # No threading target is non-AIO as well -ifeq
> ($(BR2_TOOLCHAIN_HAS_THREADS),)
> +ifeq ($(BR2_PTHREADS_NATIVE),)
>  IOZONE_TARGET = linux-noth
>  # AIO support not available on uClibc, use the linux (non-aio) target.
>  else ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)

Sorry for the spam, forgot to add the updated Config.in to the commit after I realized there was a non-threads version for iozone.

Updated patch already submitted:-)

Mischa

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

* [Buildroot] [PATCH] package/iozone: Build non-threads version if !BR2_PTHREADS_NATIVE
@ 2013-07-12  7:42 Mischa Jonker
  2013-07-12  7:49 ` Mischa Jonker
  0 siblings, 1 reply; 7+ messages in thread
From: Mischa Jonker @ 2013-07-12  7:42 UTC (permalink / raw)
  To: buildroot

iozone uses pthread_setaffinity_np, which is not supported
in Linuxthreads.

Signed-off-by: Mischa Jonker <mjonker@synopsys.com>
---
 package/iozone/Config.in |    1 +
 package/iozone/iozone.mk |    2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/package/iozone/Config.in b/package/iozone/Config.in
index 26d4daa..9dc4f72 100644
--- a/package/iozone/Config.in
+++ b/package/iozone/Config.in
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_IOZONE
 	bool "iozone"
 	depends on BR2_USE_MMU # fork()
+	depends on BR2_PTHREADS_NATIVE # pthread_setaffinity_np()
 	help
 	  IOzone is a filesystem benchmark tool.
 	  The benchmark generates and measures a variety of file operations
diff --git a/package/iozone/iozone.mk b/package/iozone/iozone.mk
index 328a526..c985141 100644
--- a/package/iozone/iozone.mk
+++ b/package/iozone/iozone.mk
@@ -12,7 +12,7 @@ IOZONE_LICENSE = IOzone license (NO DERIVED WORKS ALLOWED)
 # http://www.iozone.org/docs/Iozone_License.txt
 
 # No threading target is non-AIO as well
-ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),)
+ifeq ($(BR2_PTHREADS_NATIVE),)
 IOZONE_TARGET = linux-noth
 # AIO support not available on uClibc, use the linux (non-aio) target.
 else ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
-- 
1.7.9.5

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

end of thread, other threads:[~2013-07-12  8:27 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-07-12  7:44 [Buildroot] [PATCH] package/iozone: Build non-threads version if !BR2_PTHREADS_NATIVE Mischa Jonker
2013-07-12  8:04 ` Thomas Petazzoni
2013-07-12  8:06   ` Mischa Jonker
2013-07-12  8:14     ` Thomas Petazzoni
2013-07-12  8:27       ` Mischa Jonker
  -- strict thread matches above, loose matches on Subject: below --
2013-07-12  7:42 Mischa Jonker
2013-07-12  7:49 ` Mischa Jonker

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.