summaryrefslogtreecommitdiff
path: root/.gitattributes
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2021-09-06 12:16:26 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2021-09-06 12:16:26 +0300
commita73eedbf3fabd19ca7183b738056c30e3f7bbe35 (patch)
tree8c50bc095239e2f251f97b063db30fddfb88a0ce /.gitattributes
parent7730dd392b458748b3de10b127e91deeaea70161 (diff)
downloadmariadb-git-a73eedbf3fabd19ca7183b738056c30e3f7bbe35.tar.gz
MDEV-26467 Unnecessary compare-and-swap loop in srw_mutex
srw_mutex::wait_and_lock(): In the spin loop, we will try to poll for non-conflicting lock word state by reads, avoiding any writes. We invoke explicit std::atomic_thread_fence(std::memory_order_acquire) before returning. The individual operations on the lock word can use memory_order_relaxed. srw_mutex::lock: Document that the value for a single writer is HOLDER+1 instead of HOLDER. srw_mutex::wr_lock_try(), srw_mutex::wr_unlock(): Adjust the value of the lock word of a single writer from HOLDER to HOLDER+1.
Diffstat (limited to '.gitattributes')
0 files changed, 0 insertions, 0 deletions