aboutsummaryrefslogtreecommitdiffstats
path: root/erts/include
diff options
context:
space:
mode:
authorRickard Green <[email protected]>2010-09-10 09:55:48 +0200
committerRickard Green <[email protected]>2010-09-10 09:55:48 +0200
commit358eaf9d14a0102eaca5bb482d03d4fc37639724 (patch)
tree472b11b92a6c75f72cd6d626558444363097da1d /erts/include
parenta4c1adcdbb8bcf6be85b22232ea3093cf2299b83 (diff)
parent775365a86f69bd4a9f8db44b7017662854415540 (diff)
downloadotp-358eaf9d14a0102eaca5bb482d03d4fc37639724.tar.gz
otp-358eaf9d14a0102eaca5bb482d03d4fc37639724.tar.bz2
otp-358eaf9d14a0102eaca5bb482d03d4fc37639724.zip
Merge branch 'rickard/rwmtx-spin/OTP-8819' into dev
* rickard/rwmtx-spin/OTP-8819: Fix deadlock in reader optimized rwlock implementation Remove unused variables Increase spincount with many schedulers Re-enable spin wait on ethreads rwlocks
Diffstat (limited to 'erts/include')
-rw-r--r--erts/include/internal/ethr_mutex.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/erts/include/internal/ethr_mutex.h b/erts/include/internal/ethr_mutex.h
index 4ce3e75c78..8d9d5e3d08 100644
--- a/erts/include/internal/ethr_mutex.h
+++ b/erts/include/internal/ethr_mutex.h
@@ -346,7 +346,9 @@ do { \
#ifdef ETHR_USE_OWN_MTX_IMPL__
-#define ETHR_MTX_DEFAULT_MAIN_SPINCOUNT 1000
+#define ETHR_MTX_DEFAULT_MAIN_SPINCOUNT_MAX 2000
+#define ETHR_MTX_DEFAULT_MAIN_SPINCOUNT_BASE 800
+#define ETHR_MTX_DEFAULT_MAIN_SPINCOUNT_INC 50
#define ETHR_MTX_DEFAULT_AUX_SPINCOUNT 50
#define ETHR_CND_DEFAULT_MAIN_SPINCOUNT 0
@@ -443,7 +445,9 @@ ETHR_INLINE_FUNC_NAME_(ethr_mutex_unlock)(ethr_mutex *mtx)
#ifdef ETHR_USE_OWN_RWMTX_IMPL__
-#define ETHR_RWMTX_DEFAULT_MAIN_SPINCOUNT 1000
+#define ETHR_RWMTX_DEFAULT_MAIN_SPINCOUNT_MAX 2000
+#define ETHR_RWMTX_DEFAULT_MAIN_SPINCOUNT_BASE 800
+#define ETHR_RWMTX_DEFAULT_MAIN_SPINCOUNT_INC 50
#define ETHR_RWMTX_DEFAULT_AUX_SPINCOUNT 50
#else /* pthread_rwlock */