Author: Tobias Weber <tobias_webe...@gmx.de> Branch: c8-tcp-style-trx-length Changeset: r2088:43693de1f6ff Date: 2017-07-04 17:27 +0200 http://bitbucket.org/pypy/stmgc/changeset/43693de1f6ff/
Log: Merge revert aggressive wait and fix check for inevitable breaks commit signalling diff --git a/c8/stm/core.c b/c8/stm/core.c --- a/c8/stm/core.c +++ b/c8/stm/core.c @@ -1638,7 +1638,7 @@ void _stm_become_inevitable(const char *msg) { - int num_waits = NB_SEGMENTS; //0; // TODO try disable + int num_waits = 0; timing_become_inevitable(); @@ -1681,7 +1681,8 @@ } s_mutex_unlock(); goto retry_from_start; - } else { + } + else { EMIT_WAIT_DONE(); if (!_validate_and_turn_inevitable()) { goto retry_from_start; diff --git a/c8/stm/nursery.c b/c8/stm/nursery.c --- a/c8/stm/nursery.c +++ b/c8/stm/nursery.c @@ -550,7 +550,7 @@ pseg->pub.nursery_mark -= nursery_used; if (pseg->commit_if_not_atomic - && pseg->transaction_state == TS_INEVITABLE + // && pseg->transaction_state == TS_INEVITABLE // TODO why does this break the mechanism? && pseg->pub.running_thread->self_or_0_if_atomic != 0) { // transaction is inevitable, not atomic, and commit has been signalled by waiting thread: commit immediately pseg->pub.nursery_mark = 0; _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit