summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/DevNotes
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/DevNotes')
-rw-r--r--winsup/cygwin/DevNotes21
1 files changed, 21 insertions, 0 deletions
diff --git a/winsup/cygwin/DevNotes b/winsup/cygwin/DevNotes
index 8e517bf84..cd8caf886 100644
--- a/winsup/cygwin/DevNotes
+++ b/winsup/cygwin/DevNotes
@@ -1,3 +1,24 @@
+2012-07-21 cgf-000013
+
+These changes reflect a revamp of the "wait for signal" functionality
+which has existed in Cygwin through several signal massages.
+
+We now create a signal event only when a thread is waiting for a signal
+and arm it only for that thread. The "set_thread_waiting" function is
+used to establish the event and set it in a location referencable by
+the caller.
+
+I still do not handle all of the race conditions. What happens when
+a signal comes in just after a WF?O succeeds for some other purpose? I
+suspect that it will arm the next WF?O call and the subsequent call to
+call_signal_handler could cause a function to get an EINTR when possibly
+it shouldn't have.
+
+I haven't yet checked all of the test cases for the URL listed in the
+previous entry.
+
+Baby steps.
+
2012-06-12 cgf-000012
These changes are the preliminary for redoing the way threads wait for