* cygthread.h (cygthread::cygthread): Reorganize slightly.
* dcrt0.cc (dll_crt0_0): Move sigproc initialization later to ensure everything we need has been set up. (dll_crt0_1): Streamline some logic slightly. * sigproc.cc (no_signals_available): Add back dropped test for macro parameter. * fhandler_console.cc (fhandler_console::write): Show a little bit of what's being written to the console in debugging output.
This commit is contained in:
parent
18df393573
commit
6c6eb02b33
@ -1,3 +1,14 @@
|
|||||||
|
2010-09-12 Christopher Faylor <me+cygwin@cgf.cx>
|
||||||
|
|
||||||
|
* cygthread.h (cygthread::cygthread): Reorganize slightly.
|
||||||
|
* dcrt0.cc (dll_crt0_0): Move sigproc initialization later to ensure
|
||||||
|
everything we need has been set up.
|
||||||
|
(dll_crt0_1): Streamline some logic slightly.
|
||||||
|
* sigproc.cc (no_signals_available): Add back dropped test for macro
|
||||||
|
parameter.
|
||||||
|
* fhandler_console.cc (fhandler_console::write): Show a little bit of
|
||||||
|
what's being written to the console in debugging output.
|
||||||
|
|
||||||
2010-09-12 Corinna Vinschen <corinna@vinschen.de>
|
2010-09-12 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
* syscalls.cc (start_transaction): Make inline function. Move up to be
|
* syscalls.cc (start_transaction): Make inline function. Move up to be
|
||||||
|
@ -43,7 +43,8 @@ class cygthread
|
|||||||
void auto_release () {func = NULL;}
|
void auto_release () {func = NULL;}
|
||||||
void release (bool);
|
void release (bool);
|
||||||
cygthread (LPTHREAD_START_ROUTINE start, unsigned n, LPVOID param, const char *name, HANDLE notify = NULL)
|
cygthread (LPTHREAD_START_ROUTINE start, unsigned n, LPVOID param, const char *name, HANDLE notify = NULL)
|
||||||
: __name (name), func (start), arglen (n), arg (param), notify_detached (notify), standalone (false)
|
: __name (name), func (start), arglen (n), arg (param),
|
||||||
|
notify_detached (notify), standalone (false)
|
||||||
{
|
{
|
||||||
create ();
|
create ();
|
||||||
}
|
}
|
||||||
@ -57,7 +58,8 @@ class cygthread
|
|||||||
zap_h ();
|
zap_h ();
|
||||||
}
|
}
|
||||||
cygthread (LPTHREAD_START_ROUTINE start, LPVOID param, const char *name, HANDLE notify = NULL)
|
cygthread (LPTHREAD_START_ROUTINE start, LPVOID param, const char *name, HANDLE notify = NULL)
|
||||||
: __name (name), func (start), arglen (0), arg (param), notify_detached (notify), standalone (false)
|
: __name (name), func (start), arglen (0), arg (param),
|
||||||
|
notify_detached (notify), standalone (false)
|
||||||
{
|
{
|
||||||
create ();
|
create ();
|
||||||
}
|
}
|
||||||
|
@ -740,12 +740,6 @@ dll_crt0_0 ()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Initialize signal processing here, early, in the hopes that the creation
|
|
||||||
of a thread early in the process will cause more predictability in memory
|
|
||||||
layout for the main thread. */
|
|
||||||
if (!dynamically_loaded)
|
|
||||||
sigproc_init ();
|
|
||||||
|
|
||||||
user_data->threadinterface->Init ();
|
user_data->threadinterface->Init ();
|
||||||
|
|
||||||
_cygtls::init ();
|
_cygtls::init ();
|
||||||
@ -777,6 +771,12 @@ dll_crt0_0 ()
|
|||||||
disable_dep ();
|
disable_dep ();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Initialize signal processing here, early, in the hopes that the creation
|
||||||
|
of a thread early in the process will cause more predictability in memory
|
||||||
|
layout for the main thread. */
|
||||||
|
if (!dynamically_loaded)
|
||||||
|
sigproc_init ();
|
||||||
|
|
||||||
debug_printf ("finished dll_crt0_0 initialization");
|
debug_printf ("finished dll_crt0_0 initialization");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -940,25 +940,21 @@ dll_crt0_1 (void *)
|
|||||||
for (unsigned int i = PREMAIN_LEN / 2; i < PREMAIN_LEN; i++)
|
for (unsigned int i = PREMAIN_LEN / 2; i < PREMAIN_LEN; i++)
|
||||||
user_data->premain[i] (__argc, __argv, user_data);
|
user_data->premain[i] (__argc, __argv, user_data);
|
||||||
|
|
||||||
debug_printf ("user_data->main %p", user_data->main);
|
set_errno (0);
|
||||||
|
|
||||||
if (dynamically_loaded)
|
if (dynamically_loaded)
|
||||||
{
|
return;
|
||||||
set_errno (0);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Disable case-insensitive globbing */
|
/* Disable case-insensitive globbing */
|
||||||
ignore_case_with_glob = false;
|
ignore_case_with_glob = false;
|
||||||
|
|
||||||
set_errno (0);
|
|
||||||
|
|
||||||
MALLOC_CHECK;
|
MALLOC_CHECK;
|
||||||
cygbench (__progname);
|
cygbench (__progname);
|
||||||
|
|
||||||
ld_preload ();
|
ld_preload ();
|
||||||
/* Per POSIX set the default application locale back to "C". */
|
/* Per POSIX set the default application locale back to "C". */
|
||||||
_setlocale_r (_REENT, LC_CTYPE, "C");
|
_setlocale_r (_REENT, LC_CTYPE, "C");
|
||||||
|
|
||||||
if (user_data->main)
|
if (user_data->main)
|
||||||
cygwin_exit (user_data->main (__argc, __argv, *user_data->envptr));
|
cygwin_exit (user_data->main (__argc, __argv, *user_data->envptr));
|
||||||
__asm__ (" \n\
|
__asm__ (" \n\
|
||||||
|
@ -1987,7 +1987,7 @@ fhandler_console::write (const void *vsrc, size_t len)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
syscall_printf ("%d = fhandler_console::write (,..%d)", len, len);
|
syscall_printf ("%d = fhandler_console::write (\".20s\")", len, vsrc);
|
||||||
|
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
@ -33,7 +33,7 @@ details. */
|
|||||||
#define WSSC 60000 // Wait for signal completion
|
#define WSSC 60000 // Wait for signal completion
|
||||||
#define WPSP 40000 // Wait for proc_subproc mutex
|
#define WPSP 40000 // Wait for proc_subproc mutex
|
||||||
|
|
||||||
#define no_signals_available(x) (!my_sendsig ||( myself->exitcode & EXITCODE_SET) || (&_my_tls == _sig_tls) || !cygwin_finished_initializing)
|
#define no_signals_available(x) (!my_sendsig || ((x) && myself->exitcode & EXITCODE_SET) || (&_my_tls == _sig_tls))
|
||||||
|
|
||||||
#define NPROCS 256
|
#define NPROCS 256
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user