summaryrefslogtreecommitdiff
path: root/storage/innobase/sync
diff options
context:
space:
mode:
authorSergey Vojtovich <svoj@mariadb.org>2016-11-23 11:34:50 +0400
committerSergey Vojtovich <svoj@mariadb.org>2016-11-25 12:41:35 +0400
commit68a853732750902fbd97e8ddd1a7f264f9b199c9 (patch)
treeee0018701c757e31413ac04166f2cddc5a2d8c49 /storage/innobase/sync
parent8d010c44ef6f156566bcd5ff7fbdcf23ef96e92e (diff)
downloadmariadb-git-68a853732750902fbd97e8ddd1a7f264f9b199c9.tar.gz
MDEV-11296 - InnoDB stalls under OLTP RW on P8
Clean-up INNODB_RW_LOCKS_USE_ATOMICS: it is always set.
Diffstat (limited to 'storage/innobase/sync')
-rw-r--r--storage/innobase/sync/sync0rw.cc33
1 files changed, 0 insertions, 33 deletions
diff --git a/storage/innobase/sync/sync0rw.cc b/storage/innobase/sync/sync0rw.cc
index c5c2830b052..e597df02f8f 100644
--- a/storage/innobase/sync/sync0rw.cc
+++ b/storage/innobase/sync/sync0rw.cc
@@ -233,18 +233,6 @@ rw_lock_create_func(
/* If this is the very first time a synchronization object is
created, then the following call initializes the sync system. */
-#ifndef INNODB_RW_LOCKS_USE_ATOMICS
- mutex_create(LATCH_ID_RW_LOCK_MUTEX, rw_lock_get_mutex(lock));
-
- lock->mutex.cfile_name = cfile_name;
- lock->mutex.cline = cline;
- lock->mutex.lock_name = cmutex_name;
-#else /* INNODB_RW_LOCKS_USE_ATOMICS */
-# ifdef UNIV_DEBUG
- UT_NOT_USED(cmutex_name);
-# endif
-#endif /* INNODB_RW_LOCKS_USE_ATOMICS */
-
lock->lock_word = X_LOCK_DECR;
lock->waiters = 0;
@@ -312,10 +300,6 @@ rw_lock_free_func(
mutex_enter(&rw_lock_list_mutex);
-#ifndef INNODB_RW_LOCKS_USE_ATOMICS
- mutex_free(rw_lock_get_mutex(lock));
-#endif /* !INNODB_RW_LOCKS_USE_ATOMICS */
-
os_event_destroy(lock->event);
os_event_destroy(lock->wait_ex_event);
@@ -1219,10 +1203,6 @@ rw_lock_list_print_info(
count++;
-#ifndef INNODB_RW_LOCKS_USE_ATOMICS
- mutex_enter(&lock->mutex);
-#endif /* INNODB_RW_LOCKS_USE_ATOMICS */
-
if (lock->lock_word != X_LOCK_DECR) {
fprintf(file, "RW-LOCK: %p ", (void*) lock);
@@ -1246,10 +1226,6 @@ rw_lock_list_print_info(
rw_lock_debug_mutex_exit();
}
-
-#ifndef INNODB_RW_LOCKS_USE_ATOMICS
- mutex_exit(&lock->mutex);
-#endif /* INNODB_RW_LOCKS_USE_ATOMICS */
}
fprintf(file, "Total number of rw-locks " ULINTPF "\n", count);
@@ -1270,15 +1246,6 @@ rw_lock_print(
"RW-LATCH INFO\n"
"RW-LATCH: %p ", (void*) lock);
-#ifndef INNODB_RW_LOCKS_USE_ATOMICS
- /* We used to acquire lock->mutex here, but it would cause a
- recursive call to sync_thread_add_level() if UNIV_DEBUG
- is defined. Since this function is only invoked from
- sync_thread_levels_g(), let us choose the smaller evil:
- performing dirty reads instead of causing bogus deadlocks or
- assertion failures. */
-#endif /* INNODB_RW_LOCKS_USE_ATOMICS */
-
if (lock->lock_word != X_LOCK_DECR) {
if (lock->waiters) {