From 72133522c75e58e0200809a34f4aca68bd952b49 Mon Sep 17 00:00:00 2001 From: Haomai Wang Date: Sat, 2 May 2015 01:43:49 +0800 Subject: [PATCH] atomic_t: change cas to compare_and_swap and return bool Signed-off-by: Haomai Wang --- src/include/atomic.h | 8 ++++---- src/msg/async/Event.cc | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/include/atomic.h b/src/include/atomic.h index 7fcfb311c13fb..d5bc1c722d019 100644 --- a/src/include/atomic.h +++ b/src/include/atomic.h @@ -70,11 +70,11 @@ namespace ceph { ceph_spin_unlock(&lock); return ret; } - int cas(T o, T n) { - int success = 0; + bool compare_and_swap(T o, T n) { + bool success = false; ceph_spin_lock(&lock); if (val == o) { - success = 1; + success = true; val = n; } ceph_spin_unlock(&lock); @@ -124,7 +124,7 @@ namespace ceph { // at some point. this hack can go away someday... return AO_load_full((AO_t *)&val); } - int cas(AO_t o, AO_t n) { + bool compare_and_swap(AO_t o, AO_t n) { return AO_compare_and_swap(&val, o, n); } diff --git a/src/msg/async/Event.cc b/src/msg/async/Event.cc index daa5fb1b19126..4b63209078f00 100644 --- a/src/msg/async/Event.cc +++ b/src/msg/async/Event.cc @@ -246,7 +246,7 @@ void EventCenter::delete_time_event(uint64_t id) void EventCenter::wakeup() { - if (already_wakeup.cas(0, 1)) { + if (already_wakeup.compare_and_swap(0, 1)) { ldout(cct, 1) << __func__ << dendl; char buf[1]; buf[0] = 'c'; -- 2.39.5