problem with mmap and fork()
Corinna Vinschen
corinna-cygwin@cygwin.com
Mon Feb 25 12:43:00 GMT 2019
On Feb 25 11:51, Houder wrote:
> On Sat, 23 Feb 2019 05:54:18, Doug Henderson wrote:
>
> > On Fri, 22 Feb 2019 at 17:01, Glyn Gowing <> wrote:
> > > I have a program (attached) that works correctly on my mac but does
> > > not work with Cygwin on Windows 10. I'm running the latest version of
> [snip]
>
> > On further analysis, the call to
> > > pthread_mutexattr_setpshared(attr, PTHREAD_PROCESS_SHARED);
> > is failing. The error is EINVAL (22) Invalid argument.
> >
> > This suggests that pthread mutexes cannot be shared between processes
> > by using shared memory in cygwin. I have not attempted to determine if
> > this is working as expected, or if this is a bug, or a limitation in
> > the Windows environment.
>
> For the record, this (i.c. PTHREAD_PROCESS_SHARED) is not yet supported on
> Cygwin.
>
> winsup/cygwin/thread.cc
>
> 3636 extern "C" int
> 3637 pthread_mutexattr_setpshared (pthread_mutexattr_t *attr, int pshared)
> 3638 {
> 3639 if (!pthread_mutexattr::is_good_object (attr))
> 3640 return EINVAL;
> 3641 /* we don't use pshared for anything as yet. We need to test PROCESS_SHARED
> 3642 *functionality
> 3643 */
> 3644 if (pshared != PTHREAD_PROCESS_PRIVATE)
> 3645 return EINVAL; <====
> 3646 (*attr)->pshared = pshared;
> 3647 return 0;
> 3648 }
>
> Henri
Needless to say that patches in this area are welcome, I guess.
Corinna
--
Corinna Vinschen
Cygwin Maintainer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://cygwin.com/pipermail/cygwin/attachments/20190225/473bfaf0/attachment.sig>
More information about the Cygwin
mailing list