]> granicus.if.org Git - gc/commit
Fix PARALLEL_MARK for Windows 7+
authorIvan Maidanski <ivmai@mail.ru>
Thu, 29 May 2014 19:32:45 +0000 (23:32 +0400)
committerIvan Maidanski <ivmai@mail.ru>
Thu, 29 May 2014 19:32:45 +0000 (23:32 +0400)
commit57cc0490bad1dd1699662f2f9002012226fefc87
tree4941714bb2dfc66c6dd02c3a205c8fab4dc6e6fd
parent8c67790de966a0d4b793d8110fc6cb2f2646edf8
Fix PARALLEL_MARK for Windows 7+
(revert part of commit f1b257a)

* doc/README.macros (DONT_USE_SIGNALANDWAIT): Remove.
* win32_threads.c (DONT_USE_SIGNALANDWAIT, GC_mark_mutex_waitcnt,
SignalObjectAndWait_type, signalObjectAndWait_func): Likewise.
* win32_threads.c (GC_marker_cv, GC_mark_thread, start_mark_threads,
GC_mark_mutex_state, GC_acquire_mark_lock, GC_release_mark_lock,
GC_wait_marker, GC_notify_all_marker, GC_thr_init): Do not check
DONT_USE_SIGNALANDWAIT macro (assume it is always on as multi-core
marker based on NT SignalObjectAndWait is broken in Windows 7+ leading
to a deadlock sometimes because the function is no longer atomic).
doc/README.macros
win32_threads.c