[PATCH] workaround for sigproc_init

Corinna Vinschen corinna-cygwin@cygwin.com
Sun Jul 31 08:27:00 GMT 2011

On Jul 30 17:04, Christopher Faylor wrote:
> On Fri, Jul 29, 2011 at 08:41:10PM +0900, jojelino wrote:
> >As sigproc_init is called during dll initialization, wait_sig thread is 
> >not created as soon as possible.(this is known in msdn createthread 
> >reference. http://msdn.microsoft.com/en-us/library/ms682453(v=vs.85).aspx)
> >And then wait_sig starts to wake up as sig_dispatch_pending enters 
> >waitforsingleobject. then main thread stops for few ms. and it shows 
> >poor performance.
> Incidentally, the intent of the now-defunct wincap
> wincap.has_buggy_thread_startup was to avoid creating wait_sig during
> thread startup, moving it to dll_crt0_1() which is the code that
> eventually calls main().
> (This was all rehashed back in August/September 2010)
> Although I didn't fiddle with that myself, Corinna reported that having
> the value set had no effect in her test cases so I don't think your
> analysis here is 100% correct.

Erm, I tested on 32 bit.  The slowdown occured on all platforms, not
only 64 bit.  64 bit is still only half as fast in the date loop for
reason or reasons unknown.


Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

More information about the Cygwin-patches mailing list