File tree Expand file tree Collapse file tree 1 file changed +13
-2
lines changed
Expand file tree Collapse file tree 1 file changed +13
-2
lines changed Original file line number Diff line number Diff line change @@ -1669,13 +1669,24 @@ class OSD : public Dispatcher,
16691669 protected:
16701670
16711671 // -- osd map --
1672- // TODO: switch to std::atomic<OSDMapRef> when C++20 will be available.
1673- OSDMapRef _osdmap;
1672+ #ifdef __cpp_lib_atomic_shared_ptr
1673+ std::atomic<OSDMapRef> _osdmap;
1674+ #else
1675+ OSDMapRef _osdmap;
1676+ #endif
16741677 void set_osdmap (OSDMapRef osdmap) {
1678+ #ifdef __cpp_lib_atomic_shared_ptr
1679+ _osdmap.store (osdmap);
1680+ #else
16751681 std::atomic_store (&_osdmap, osdmap);
1682+ #endif
16761683 }
16771684 OSDMapRef get_osdmap () const {
1685+ #ifdef __cpp_lib_atomic_shared_ptr
1686+ return _osdmap.load ();
1687+ #else
16781688 return std::atomic_load (&_osdmap);
1689+ #endif
16791690 }
16801691 epoch_t get_osdmap_epoch () const {
16811692 // XXX: performance?
You can’t perform that action at this time.
0 commit comments