Possible race in SYSV IPC (semaphores)
Lavrentiev, Anton (NIH/NLM/NCBI) [C]
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:
(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.
More information about the Cygwin