Possible race in SYSV IPC (semaphores)

Lavrentiev, Anton (NIH/NLM/NCBI) [C] lavr@ncbi.nlm.nih.gov
Mon Nov 26 18:09:00 GMT 2012


> I just checked in the change.

Thank you.  I will test it as soon as it's available in a snapshot.

> ...especially since I can't reproduce this.  I tried with cygserver
> before and after my patch and in both cases your semaphore testcase
> worked as expected with -d -l 7.

I see.  Maybe this will help.  My sequence of actions:

In an elevated cmd.exe, from Cygwin's /bin:

cygrunsrv.exe -I cygserver -x /usr/sbin/cygserver.exe -a "-d -l 7"
cygrunsrv.exe -S cygserver

In a regular cmd.exe:

a.exe

(this is my testcase that locks/unlocks the semaphores).
It never gets past iteration 1000.

Also, if I start cygserver just as a regular process (not as a background
thing), so that it logs right to the window, it does not lock up.

Anton Lavrentiev
Contractor NIH/NLM/NCBI



More information about the Cygwin mailing list