[pypy-commit] stmgc c8-tcp-style-trx-length: Move transaction length update for aborts to validation

tobweber pypy.commits at gmail.com
Mon Jul 17 05:23:14 EDT 2017


Author: Tobias Weber <tobias_weber89 at gmx.de>
Branch: c8-tcp-style-trx-length
Changeset: r2119:dbea548c4c6e
Date: 2017-07-15 18:12 +0200
http://bitbucket.org/pypy/stmgc/changeset/dbea548c4c6e/

Log:	Move transaction length update for aborts to validation

diff --git a/c8/stm/core.c b/c8/stm/core.c
--- a/c8/stm/core.c
+++ b/c8/stm/core.c
@@ -347,6 +347,9 @@
     }
 
     if (thread_local_for_logging != NULL) {
+        if (needs_abort) {
+            stm_transaction_length_handle_validation(thread_local_for_logging, true);
+        }
         stop_timer_and_publish_for_thread(
             thread_local_for_logging, STM_DURATION_VALIDATION);
     }
@@ -1582,8 +1585,6 @@
     tl->self_or_0_if_atomic = (intptr_t)tl;   /* clear the 'atomic' flag */
     STM_PSEGMENT->atomic_nesting_levels = 0;
 
-    stm_transaction_length_handle_validation(tl, true);
-
     if (tl->mem_clear_on_abort)
         memset(tl->mem_clear_on_abort, 0, tl->mem_bytes_to_clear_on_abort);
     if (tl->mem_reset_on_abort) {


More information about the pypy-commit mailing list