]> granicus.if.org Git - gc/commit
Fix stop_info.stack_ptr assignment in GC_suspend_all for OpenBSD
authorIvan Maidanski <ivmai@mail.ru>
Fri, 20 Jul 2012 20:36:34 +0000 (00:36 +0400)
committerIvan Maidanski <ivmai@mail.ru>
Fri, 20 Jul 2012 20:36:34 +0000 (00:36 +0400)
commit7ff92dc60b7576c40015add3576d3a7020bc6fbb
treee8af6ce2a834007c504f678f856bf77a9a186ee1
parentf8d4f156d219cbddc7c7bfe7f9c2b6f5967bbab1
Fix stop_info.stack_ptr assignment in GC_suspend_all for OpenBSD

* os_dep.c (GC_get_stack_base): Abort if pthread_stackseg_np fails
(if GC_OPENBSD_THREADS).
* pthread_stop_world.c (GC_suspend_all): Get correct stack_ptr by
calling pthread_stackseg_np (subtracting ss_size from ss_sp) instead
of retrieving it from OpenBSD pthread implementation-dependent context
(if GC_OPENBSD_THREADS); remove test of stack_ptr and comment.
os_dep.c
pthread_stop_world.c