mq_send()/mq_receive() may never return if used from threads
Corinna Vinschen
corinna-cygwin@cygwin.com
Mon Jan 27 21:51:21 GMT 2025
On Jan 27 20:35, Corinna Vinschen via Cygwin wrote:
> On Jan 27 19:59, Christian Franke via Cygwin wrote:
> > Christian Franke wrote:
> > > Found with 'stress-ng --workload ...':
> > >
> > > If mq_receive is called on an empty queue and mq_send is called later
> > > from a different thread, both functions never return and signals
> > > (including SIGKILL) are no longer processed.
> > >
> > > Testcase (attached):
> > >
> > > $ uname -r
> > > 3.5.5-1.x86_64
> > >
> >
> > The problem is also reproducible with 3.5.6-1 and recent
> > 3.6.0-0.345.gb940faa144ca
>
> Yes, because I didn't have the time to look into it yet.
>
> I just did, and I think I see what's going on. This should be fixed
> in 3.5.7.
I just pushed a patch, please try cygwin-3.6.0-0.346.gfe6ddc15a356.
Thanks,
Corinna
More information about the Cygwin
mailing list