]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
librbd: replace atomic_t with std::atomic<int>
authorKefu Chai <kchai@redhat.com>
Sat, 6 Feb 2016 16:26:59 +0000 (00:26 +0800)
committerKefu Chai <kchai@redhat.com>
Sat, 6 Feb 2016 17:59:46 +0000 (01:59 +0800)
it fails to compile with clang, and turns out it should be
`ceph::atomic_t`, but I take this chance to replace it
with std::atomic<> to phase out atomic_t.

Signed-off-by: Kefu Chai <kchai@redhat.com>
src/librbd/Operations.cc
src/librbd/Operations.h

index 719baf5c19f608463971dcc2d5a0b95784ff2451..ed75c0b85dfa9c45809eb09b5bb26dd939bfcdc5 100644 (file)
@@ -52,7 +52,7 @@ int Operations<I>::flatten(ProgressContext &prog_ctx) {
     }
   }
 
-  uint64_t request_id = m_async_request_seq.inc();
+  uint64_t request_id = ++m_async_request_seq;
   r = invoke_async_request("flatten", false,
                            boost::bind(&Operations<I>::flatten, this,
                                        boost::ref(prog_ctx), _1),
@@ -129,7 +129,7 @@ int Operations<I>::rebuild_object_map(ProgressContext &prog_ctx) {
     return r;
   }
 
-  uint64_t request_id = m_async_request_seq.inc();
+  uint64_t request_id = ++m_async_request_seq;
   r = invoke_async_request("rebuild object map", true,
                            boost::bind(&Operations<I>::rebuild_object_map, this,
                                        boost::ref(prog_ctx), _1),
@@ -245,7 +245,7 @@ int Operations<I>::resize(uint64_t size, ProgressContext& prog_ctx) {
     return r;
   }
 
-  uint64_t request_id = m_async_request_seq.inc();
+  uint64_t request_id = ++m_async_request_seq;
   r = invoke_async_request("resize", false,
                            boost::bind(&Operations<I>::resize, this,
                                        size, boost::ref(prog_ctx), _1, 0),
index 70eefde4959cd6cdf913950f18ad2ab2a052de06..48fde18899a2ddf606cde3deb2aa34b98aad73f0 100644 (file)
@@ -5,7 +5,7 @@
 #define CEPH_LIBRBD_OPERATIONS_H
 
 #include "include/int_types.h"
-#include "include/atomic.h"
+#include <atomic>
 #include <string>
 #include <boost/function.hpp>
 
@@ -59,7 +59,7 @@ public:
 
 private:
   ImageCtxT &m_image_ctx;
-  atomic_t m_async_request_seq;
+  std::atomic<int> m_async_request_seq;
 
   int invoke_async_request(const std::string& request_type,
                            bool permit_snapshot,