Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2012-07-22 02:58:20 +0400
committerChristopher Faylor <me@cgf.cx>2012-07-22 02:58:20 +0400
commit962f9a2ccc6cd7f24a2d89d68bd8b59d43f8ac8a (patch)
treec82af5083b39d153b67207bbc4c6f11f281c405c /winsup/cygwin/tlsoffsets.h
parentb8a84b73d79d1a5ae2a5a4d6c226f84b9543908f (diff)
* DevNotes: Add entry cgf-000013.
* cygserver_ipc.h (ipc_set_proc_info): Use _cygtls::ipc_set_proc_info to set per-thread signal arrived value. * cygthread.cc (cygthread::detach): Use per-thread signal_arrived via set_thread_waiting. * fork.cc (_cygtls::fixup_after_fork): Clear signal_arrived. (_cygtls::remove): Close any signal_arrived handle when thread exists. (_cygtls::find_tls): Remove unneeded function. * cygtls.h: Update copyright. (class _cygtls): Reorganize to help avoid rebuilding newlib when structure changes. (_cygtls::event): Delete. (_cygtls::threadkill): Ditto. (_cygtls::signal_waiting): Declare new bool. (_cygtls::find_tls): Delete declaration. (_cygtls::set_threadkill): Ditto. (_cygtls::reset_threadkill): Ditto. (_cygtls::set_signal_arrived): Declare new function. (class set_thread_waiting): Declare new class. * cygwait.cc (cw_nowait_storage): Define. (cygwait): Set per-thread signal_arrived via set_thread_waiting. Don't special-case _main_tls. * cygwait.h (cw_nowait): Define. (cw_infinite): Ditto. (cygwait): Redefine pathological wait-only case. * dcrt0.cc (dll_crt0_0): Remove call to now-defunct events_init(). (dll_crt0_1): Remove call to now-defunct create_signal_arrived(). * exceptions.cc: Reflect set_signal_mask() argument reordering throughout. Remove signal mask synchronization throughout. (events_init): Delete definition. (mask_sync): Delete now-unneeded mask synchronization. (set_signal_mask): Reverse order of arguments to "standard" to, from layout. Rename "newmask" argument to "setmask". Remove debugging. (sig_handle_tty_stop): Use cancelable_wait rather than WFMO. (_cygtls::interrupt_setup): Don't treat "threadkill" events specially. Conditionally set signal_arrived depending on whether the thread has created it or not. (sigpacket::process): Reorganize to reflect thread-specific sending of signals which is more in line with the way it was actually supposed to work. * fhandler_socket.cc (get_inet_addr): Use cancelable_wait rather than IsEventSignalled to avoid potential race. (fhandler_socket::wait_for_events): Set signal_arrived event using set_thread_waiting(). (fhandler_socket::close): Use cygwait for the case of just waiting 10 ms for a signal. * fhandler_tape.cc (fhandler_dev_tape::_lock): Use cancelable_wait rather than WFMO. Redo switch/case tests accordingly. * fhandler_termios.cc (fhandler_termios::bg_check): Use cygwait for case of just waiting 0 ms for a potential signal. * fhandler_tty.cc (fhandler_pty_master::process_slave_output): Use cancelable_wait rather than WFSO. * fhandler_windows.cc (fhandler_windows::read): Set per-thread signal_arrived via set_thread_waiting(). * flock.cc (lf_setlock): Ditto. * select.cc (pselect): Ditto. Set per-thread signal_arrived using set_thread_waiting(). * gendef: Don't special case handling of _cygtls::sig for threads. * gentls_offsets: Use #pragma once in tlsoffsets.h. * ntdll.h: Use #pragma once. * poll.cc: Reflect set_signal_mask() argument reordering. * posix_ipc.cc (ipc_mutex_lock): Use cancelable_wait rather than WFMO. (ipc_cond_timedwait): Set perl-thread signal arrived using set_thread_waiting(). * security.h: Use #pragma once. * signal.cc (abort): Reflect set_signal_mask() argument reordering. (clock_nanosleep): Ditto. Change call to cancelable_wait to properly specify handling of cancel and interrupt. (sigwaitinfo): Remove handling of per-thread event in favor of per-thread signal_arrived. Use cancelable_wait rather than WFSO. * sigproc.cc (signal_arrived): Delete definition. (create_signal_arrived): Ditto. * sigproc.h (signal_arrived): Delete declaration. (set_signal_mask): Avoid defining as a "C" function. Don't conditionally declare. (create_signal_arrived): Delete declaration. * syscalls.cc (rename): Use cygwait() rather than WFSO. * thread.h (fast_mutex::lock): Use cw_infinite rather than LARGE_NULL. * wait.cc (wait4): Ditto. * thread.cc (pthread_mutex::lock): Ditto. (pthread::join): Ditto. (semaphore::_wait): Ditto. (pthread_kill): Remove set_threadkill() accommodation. * tlsoffsets.h: Regenerate.
Diffstat (limited to 'winsup/cygwin/tlsoffsets.h')
-rw-r--r--winsup/cygwin/tlsoffsets.h144
1 files changed, 72 insertions, 72 deletions
diff --git a/winsup/cygwin/tlsoffsets.h b/winsup/cygwin/tlsoffsets.h
index 18057742c..3acd27a19 100644
--- a/winsup/cygwin/tlsoffsets.h
+++ b/winsup/cygwin/tlsoffsets.h
@@ -1,42 +1,42 @@
//;# autogenerated: Do not edit.
//; $tls::sizeof__cygtls = 4048;
-//; $tls::func = -12700;
-//; $tls::pfunc = 0;
-//; $tls::saved_errno = -12696;
-//; $tls::psaved_errno = 4;
-//; $tls::sa_flags = -12692;
-//; $tls::psa_flags = 8;
-//; $tls::oldmask = -12688;
-//; $tls::poldmask = 12;
-//; $tls::deltamask = -12684;
-//; $tls::pdeltamask = 16;
-//; $tls::event = -12680;
-//; $tls::pevent = 20;
-//; $tls::errno_addr = -12676;
-//; $tls::perrno_addr = 24;
-//; $tls::sigmask = -12672;
-//; $tls::psigmask = 28;
-//; $tls::sigwait_mask = -12668;
-//; $tls::psigwait_mask = 32;
-//; $tls::sigwait_info = -12664;
-//; $tls::psigwait_info = 36;
-//; $tls::thread_context = -12660;
-//; $tls::pthread_context = 40;
-//; $tls::thread_id = -12448;
-//; $tls::pthread_id = 252;
-//; $tls::threadkill = -12444;
-//; $tls::pthreadkill = 256;
-//; $tls::infodata = -12440;
-//; $tls::pinfodata = 260;
-//; $tls::tid = -12292;
-//; $tls::ptid = 408;
-//; $tls::local_clib = -12288;
-//; $tls::plocal_clib = 412;
-//; $tls::__dontuse = -12288;
-//; $tls::p__dontuse = 412;
-//; $tls::locals = -11200;
-//; $tls::plocals = 1500;
+//; $tls::locals = -12700;
+//; $tls::plocals = 0;
+//; $tls::local_clib = -11236;
+//; $tls::plocal_clib = 1464;
+//; $tls::__dontuse = -11236;
+//; $tls::p__dontuse = 1464;
+//; $tls::func = -10148;
+//; $tls::pfunc = 2552;
+//; $tls::saved_errno = -10144;
+//; $tls::psaved_errno = 2556;
+//; $tls::sa_flags = -10140;
+//; $tls::psa_flags = 2560;
+//; $tls::oldmask = -10136;
+//; $tls::poldmask = 2564;
+//; $tls::deltamask = -10132;
+//; $tls::pdeltamask = 2568;
+//; $tls::errno_addr = -10128;
+//; $tls::perrno_addr = 2572;
+//; $tls::sigmask = -10124;
+//; $tls::psigmask = 2576;
+//; $tls::sigwait_mask = -10120;
+//; $tls::psigwait_mask = 2580;
+//; $tls::sigwait_info = -10116;
+//; $tls::psigwait_info = 2584;
+//; $tls::signal_arrived = -10112;
+//; $tls::psignal_arrived = 2588;
+//; $tls::signal_waiting = -10108;
+//; $tls::psignal_waiting = 2592;
+//; $tls::thread_context = -10104;
+//; $tls::pthread_context = 2596;
+//; $tls::thread_id = -9892;
+//; $tls::pthread_id = 2808;
+//; $tls::infodata = -9888;
+//; $tls::pinfodata = 2812;
+//; $tls::tid = -9740;
+//; $tls::ptid = 2960;
//; $tls::_ctinfo = -9736;
//; $tls::p_ctinfo = 2964;
//; $tls::andreas = -9732;
@@ -59,42 +59,42 @@
//; $tls::pinitialized = 4044;
//; __DATA__
-#define tls_func (-12700)
-#define tls_pfunc (0)
-#define tls_saved_errno (-12696)
-#define tls_psaved_errno (4)
-#define tls_sa_flags (-12692)
-#define tls_psa_flags (8)
-#define tls_oldmask (-12688)
-#define tls_poldmask (12)
-#define tls_deltamask (-12684)
-#define tls_pdeltamask (16)
-#define tls_event (-12680)
-#define tls_pevent (20)
-#define tls_errno_addr (-12676)
-#define tls_perrno_addr (24)
-#define tls_sigmask (-12672)
-#define tls_psigmask (28)
-#define tls_sigwait_mask (-12668)
-#define tls_psigwait_mask (32)
-#define tls_sigwait_info (-12664)
-#define tls_psigwait_info (36)
-#define tls_thread_context (-12660)
-#define tls_pthread_context (40)
-#define tls_thread_id (-12448)
-#define tls_pthread_id (252)
-#define tls_threadkill (-12444)
-#define tls_pthreadkill (256)
-#define tls_infodata (-12440)
-#define tls_pinfodata (260)
-#define tls_tid (-12292)
-#define tls_ptid (408)
-#define tls_local_clib (-12288)
-#define tls_plocal_clib (412)
-#define tls___dontuse (-12288)
-#define tls_p__dontuse (412)
-#define tls_locals (-11200)
-#define tls_plocals (1500)
+#define tls_locals (-12700)
+#define tls_plocals (0)
+#define tls_local_clib (-11236)
+#define tls_plocal_clib (1464)
+#define tls___dontuse (-11236)
+#define tls_p__dontuse (1464)
+#define tls_func (-10148)
+#define tls_pfunc (2552)
+#define tls_saved_errno (-10144)
+#define tls_psaved_errno (2556)
+#define tls_sa_flags (-10140)
+#define tls_psa_flags (2560)
+#define tls_oldmask (-10136)
+#define tls_poldmask (2564)
+#define tls_deltamask (-10132)
+#define tls_pdeltamask (2568)
+#define tls_errno_addr (-10128)
+#define tls_perrno_addr (2572)
+#define tls_sigmask (-10124)
+#define tls_psigmask (2576)
+#define tls_sigwait_mask (-10120)
+#define tls_psigwait_mask (2580)
+#define tls_sigwait_info (-10116)
+#define tls_psigwait_info (2584)
+#define tls_signal_arrived (-10112)
+#define tls_psignal_arrived (2588)
+#define tls_signal_waiting (-10108)
+#define tls_psignal_waiting (2592)
+#define tls_thread_context (-10104)
+#define tls_pthread_context (2596)
+#define tls_thread_id (-9892)
+#define tls_pthread_id (2808)
+#define tls_infodata (-9888)
+#define tls_pinfodata (2812)
+#define tls_tid (-9740)
+#define tls_ptid (2960)
#define tls__ctinfo (-9736)
#define tls_p_ctinfo (2964)
#define tls_andreas (-9732)