From: Jesse Williamson Date: Tue, 23 May 2017 12:49:28 +0000 (-0700) Subject: journal: migrate atomic_t to X-Git-Tag: ses5-milestone6~8^2~11^2~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=99997237682f2b05185ac077209a8dda3f925eb2;p=ceph.git journal: migrate atomic_t to Signed-off-by: Jesse Williamson --- diff --git a/src/journal/JournalRecorder.cc b/src/journal/JournalRecorder.cc index d0c6406a3ac4..9c38758fccaa 100644 --- a/src/journal/JournalRecorder.cc +++ b/src/journal/JournalRecorder.cc @@ -6,6 +6,8 @@ #include "journal/Entry.h" #include "journal/Utils.h" +#include + #define dout_subsys ceph_subsys_journaler #undef dout_prefix #define dout_prefix *_dout << "JournalRecorder: " << this << " " @@ -19,7 +21,7 @@ namespace { struct C_Flush : public Context { JournalMetadataPtr journal_metadata; Context *on_finish; - atomic_t pending_flushes; + std::atomic pending_flushes = { 0 }; int ret_val; C_Flush(JournalMetadataPtr _journal_metadata, Context *_on_finish, @@ -32,7 +34,7 @@ struct C_Flush : public Context { if (r < 0 && ret_val == 0) { ret_val = r; } - if (pending_flushes.dec() == 0) { + if (--pending_flushes == 0) { // ensure all prior callback have been flushed as well journal_metadata->queue(on_finish, ret_val); delete this; diff --git a/src/test/journal/test_Journaler.cc b/src/test/journal/test_Journaler.cc index 4fd06ad6535f..529141de9a30 100644 --- a/src/test/journal/test_Journaler.cc +++ b/src/test/journal/test_Journaler.cc @@ -1,13 +1,18 @@ // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- // vim: ts=8 sw=2 smarttab +#include "include/stringify.h" + #include "journal/Journaler.h" #include "journal/Settings.h" -#include "include/stringify.h" -#include "gtest/gtest.h" + #include "test/librados/test.h" #include "test/journal/RadosTestFixture.h" -#include "include/stringify.h" + +#include "gtest/gtest.h" + +// reinclude our assert to clobber the system one +#include "include/assert.h" class TestJournaler : public RadosTestFixture { public: