diff options
author | Andy Wingo <wingo@pobox.com> | 2016-11-01 23:28:12 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2016-11-01 23:33:47 +0100 |
commit | 4b78b001d875cee7a4ee383f0cb498afc67835ee (patch) | |
tree | 52ae8a1713e3d4b8d8b3b39e1c53da0169e61fd9 | |
parent | 8fc9450619a78023b0f4ea7c604569b5c5385927 (diff) | |
download | guile-4b78b001d875cee7a4ee383f0cb498afc67835ee.tar.gz |
Threads no longer track critical section level
* libguile/threads.h (scm_i_thread):
* libguile/threads.c (guilify_self_1): Remove critical_section_level
member of scm_i_thread.
* libguile/async.c (scm_critical_section_end)
(scm_critical_section_start): Remove bookkeeping.
-rw-r--r-- | libguile/async.c | 2 | ||||
-rw-r--r-- | libguile/threads.c | 1 | ||||
-rw-r--r-- | libguile/threads.h | 4 |
3 files changed, 0 insertions, 7 deletions
diff --git a/libguile/async.c b/libguile/async.c index d7b266bd2..e45616755 100644 --- a/libguile/async.c +++ b/libguile/async.c @@ -306,13 +306,11 @@ scm_critical_section_start (void) { scm_i_pthread_mutex_lock (&critical_section_mutex); SCM_I_CURRENT_THREAD->block_asyncs++; - SCM_I_CURRENT_THREAD->critical_section_level++; } void scm_critical_section_end (void) { - SCM_I_CURRENT_THREAD->critical_section_level--; SCM_I_CURRENT_THREAD->block_asyncs--; scm_i_pthread_mutex_unlock (&critical_section_mutex); scm_async_tick (); diff --git a/libguile/threads.c b/libguile/threads.c index c27a7ea55..c1f416981 100644 --- a/libguile/threads.c +++ b/libguile/threads.c @@ -421,7 +421,6 @@ guilify_self_1 (struct GC_stack_base *base) t.dynstack.limit = NULL; t.pending_asyncs = SCM_EOL; t.block_asyncs = 1; - t.critical_section_level = 0; t.base = base->mem_base; #ifdef __ia64__ t.register_backing_store_base = base->reg_base; diff --git a/libguile/threads.h b/libguile/threads.h index b7f0fd987..6cf575be1 100644 --- a/libguile/threads.h +++ b/libguile/threads.h @@ -118,10 +118,6 @@ typedef struct scm_i_thread { void *register_backing_store_base; scm_t_contregs *pending_rbs_continuation; #endif - - /* Whether this thread is in a critical section. */ - int critical_section_level; - } scm_i_thread; #define SCM_I_IS_THREAD(x) SCM_SMOB_PREDICATE (scm_tc16_thread, x) |