Author: Tobias Weber <tobias_webe...@gmx.de>
Branch: c8-efficient-serial-execution-master
Changeset: r2153:cadbddf81079
Date: 2017-08-21 12:40 +0200
http://bitbucket.org/pypy/stmgc/changeset/cadbddf81079/

Log:    Fix trx length update depends on instrumentation for thread local
        reference and remove logging of trx length

diff --git a/c8/stm/core.c b/c8/stm/core.c
--- a/c8/stm/core.c
+++ b/c8/stm/core.c
@@ -1255,6 +1255,8 @@
     bool was_inev = STM_PSEGMENT->transaction_state == TS_INEVITABLE;
     _validate_and_add_to_commit_log();
 
+
+    stm_thread_local_t *tl_for_trx_len = STM_SEGMENT->running_thread;
     if (external) {
         /* from this point on, unlink the original 'stm_thread_local_t *'
            from its segment.  Better do it as soon as possible, because
@@ -1302,7 +1304,7 @@
 
     s_mutex_unlock();
 
-    stm_transaction_length_handle_validation(thread_local_for_logging, false);
+    stm_transaction_length_handle_validation(tl_for_trx_len, false);
 
     /* between transactions, call finalizers. this will execute
        a transaction itself */
diff --git a/c8/stm/nursery.c b/c8/stm/nursery.c
--- a/c8/stm/nursery.c
+++ b/c8/stm/nursery.c
@@ -77,8 +77,6 @@
 
 static inline uintptr_t stm_get_transaction_length(stm_thread_local_t *tl) {
     double relative_additional_length = tl->relative_transaction_length;
-    publish_custom_value_event(
-        relative_additional_length, STM_SINGLE_THREAD_MODE_ADAPTIVE);
     uintptr_t result =
         (uintptr_t)(LARGE_FILL_MARK_NURSERY_BYTES * 
relative_additional_length);
     // printf("%020" PRIxPTR "\n", result);
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to