Discussion:
pthread_barrier
Reini Urban
2013-10-08 16:31:24 UTC
Permalink
In http://cygwin.com/ml/cygwin/2011-07/msg00406.html
Corinna hinted that pthread_barrier is a bit hard to implement.

I found 2 nice non-GPL implementations, but I'm not sure about the license.
There's one in libuv (which I need it for), which is
https://github.com/joyent/libuv/blob/master/src/unix/pthread-fixes.c
provided by Sony and Google (for Android), which seems to be MIT licensed.

And there's http://www.cs.berkeley.edu/~bvs/cs267_hw2/particles/pthread_barrier.c
without any license, looks it's some berkeley course material.

Doesn't look too hard to implement.
Should I ask the berkeley guy Brian Van Straalen
or is the libuv version good enough for us?

The GPL pthreads-win32 version looks awful in comparison.
--
Reini Urban
http://cpanel.net/ http://www.perl-compiler.org/
Christopher Faylor
2013-10-08 17:14:13 UTC
Permalink
Post by Reini Urban
In http://cygwin.com/ml/cygwin/2011-07/msg00406.html
Corinna hinted that pthread_barrier is a bit hard to implement.
I found 2 nice non-GPL implementations, but I'm not sure about the license.
There's one in libuv (which I need it for), which is
https://github.com/joyent/libuv/blob/master/src/unix/pthread-fixes.c
provided by Sony and Google (for Android), which seems to be MIT licensed.
This one is problematic since it seems like we'd have to include the license
when we distribute the DLL. (Shhhh... I know...)
Post by Reini Urban
And there's http://www.cs.berkeley.edu/~bvs/cs267_hw2/particles/pthread_barrier.c
without any license, looks it's some berkeley course material.
Doesn't look too hard to implement.
Should I ask the berkeley guy Brian Van Straalen
or is the libuv version good enough for us?
Code without a license isn't any better than code with a license. If
you can get someone to assert that the Berkeley code is in the public
domain that would help. Otherwise, I don't think either of these are
viable options.

Perhaps someone could describe the implementations to someone who could
implement them from scratch. That would be the safest way to do this
I think.

cgf
Corinna Vinschen
2013-10-14 13:25:46 UTC
Permalink
Post by Christopher Faylor
Post by Reini Urban
In http://cygwin.com/ml/cygwin/2011-07/msg00406.html
Corinna hinted that pthread_barrier is a bit hard to implement.
I found 2 nice non-GPL implementations, but I'm not sure about the license.
There's one in libuv (which I need it for), which is
https://github.com/joyent/libuv/blob/master/src/unix/pthread-fixes.c
provided by Sony and Google (for Android), which seems to be MIT licensed.
This one is problematic since it seems like we'd have to include the license
when we distribute the DLL. (Shhhh... I know...)
Post by Reini Urban
And there's http://www.cs.berkeley.edu/~bvs/cs267_hw2/particles/pthread_barrier.c
without any license, looks it's some berkeley course material.
Doesn't look too hard to implement.
Should I ask the berkeley guy Brian Van Straalen
or is the libuv version good enough for us?
Code without a license isn't any better than code with a license. If
you can get someone to assert that the Berkeley code is in the public
domain that would help. Otherwise, I don't think either of these are
viable options.
Isn't Berkeley code always BSD licensed? I'm just dreaming of a perfect
world, I guess...
Post by Christopher Faylor
Perhaps someone could describe the implementations to someone who could
implement them from scratch. That would be the safest way to do this
I think.
Indeed, and in fact the problem is not that there isn't code around
which already implements pthread_barrier stuff, the problem is that none
of that matches the existing, C++ for extremists pthread code in Cygwin.
That's what I was silently implying when I wrote the aforementioned
mail.


Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Loading...