diff options
author | Rémi Verschelde <remi@verschelde.fr> | 2022-07-19 17:09:59 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-19 17:09:59 +0200 |
commit | cce330bda599b1f3f69b5bd4608a6ae88f338612 (patch) | |
tree | 7247be24e35b6aaff3b7d38dba7f10aa960fa586 | |
parent | eea14a0edc3f2a8ab4a91d1e142d48a5348584bb (diff) | |
parent | 02a584d8e68fad988fbbe43e05f8437284c00733 (diff) |
Merge pull request #63187 from RandomShaper/fix_atomic_cmp_exchange
-rw-r--r-- | core/templates/safe_refcount.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/core/templates/safe_refcount.h b/core/templates/safe_refcount.h index 76f76be96a..3148283dca 100644 --- a/core/templates/safe_refcount.h +++ b/core/templates/safe_refcount.h @@ -111,7 +111,7 @@ public: if (tmp >= p_value) { return tmp; // already greater, or equal } - if (value.compare_exchange_weak(tmp, p_value, std::memory_order_release)) { + if (value.compare_exchange_weak(tmp, p_value, std::memory_order_acq_rel)) { return p_value; } } @@ -123,7 +123,7 @@ public: if (c == 0) { return 0; } - if (value.compare_exchange_weak(c, c + 1, std::memory_order_release)) { + if (value.compare_exchange_weak(c, c + 1, std::memory_order_acq_rel)) { return c + 1; } } |