New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

messenger,client,compressor: migrate atomic_t to std::atomic #14657

Merged
merged 5 commits into from Jun 5, 2017

Conversation

Projects
None yet
3 participants
@chardan
Contributor

chardan commented Apr 20, 2017

refer-to: #14655

@liewegas

This comment has been minimized.

Member

liewegas commented Apr 27, 2017

/home/sage/src/ceph2/src/osdc/Objecter.h: In member function ‘Objecter::Op* Objecter::prepare_cmpext_op(const object_t&, const object_locator_t&, uint64_t, ceph::bufferlist&, snapid_t, int, Context*, version_t*, ObjectOperation*, int)’:
/home/sage/src/ceph2/src/osdc/Objecter.h:2392:60: error: ‘struct std::atomic’ has no member named ‘read’; did you mean ‘load’?
Op *o = new Op(oid, oloc, ops, flags | global_op_flags.read() |

@liewegas liewegas changed the title from migrate atomic_t to std::atomic (mothra) to common: migrate atomic_t to std::atomic Apr 27, 2017

@chardan

This comment has been minimized.

Contributor

chardan commented Apr 28, 2017

Jenkins re-test this please

@chardan chardan changed the title from common: migrate atomic_t to std::atomic to osdc,mds,filestore,librbd,xio,messenger: migrate atomic_t to std::atomic May 3, 2017

@chardan

This comment has been minimized.

Contributor

chardan commented May 4, 2017

Jenkins, retest this please.

@tchaikov

This comment has been minimized.

Contributor

tchaikov commented May 4, 2017

@chardan please rebase against master, 0ccebc5 introduced a change that you need to fix. that's why you have

/home/jenkins-build/build/workspace/ceph-pull-requests/src/osdc/Objecter.h: In member function ‘Objecter::Op* Objecter::prepare_cmpext_op(const object_t&, const object_locator_t&, uint64_t, ceph::bufferlist&, snapid_t, int, Context*, version_t*, ObjectOperation*, int)’:
/home/jenkins-build/build/workspace/ceph-pull-requests/src/osdc/Objecter.h:2395:60: error: ‘struct std::atomic<long int>’ has no member named ‘read’
     Op *o = new Op(oid, oloc, ops, flags | global_op_flags.read() |
                                                            ^
@tchaikov

This comment has been minimized.

Contributor

tchaikov commented May 5, 2017

the build still fails.

@chardan

This comment has been minimized.

Contributor

chardan commented May 12, 2017

Jenkins retest this please

@liewegas liewegas added the needs-qa label May 19, 2017

@liewegas

This comment has been minimized.

Member

liewegas commented May 19, 2017

build issue:

[ 82%] Building CXX object src/test/librbd/CMakeFiles/unittest_librbd.dir/test_Groups.cc.o
In file included from /home/jenkins-build/build/workspace/ceph-pull-requests/src/include/Context.h:19:0,
                 from /home/jenkins-build/build/workspace/ceph-pull-requests/src/journal/Journaler.h:9,
                 from /home/jenkins-build/build/workspace/ceph-pull-requests/src/test/journal/test_Journaler.cc:4:
/home/jenkins-build/build/workspace/ceph-pull-requests/src/common/RefCountedObj.h: In member function ‘const RefCountedObject* RefCountedObject::get() const’:
/home/jenkins-build/build/workspace/ceph-pull-requests/src/common/dout.h:81:12: error: base operand of ‘->’ is not a pointer
   _ASSERT_H->_log->submit_entry(_dout_e);  \
            ^
/home/jenkins-build/build/workspace/ceph-pull-requests/src/common/dout.h:85:15: note: in expansion of macro ‘dendl_impl’
 #define dendl dendl_impl
               ^
/home/jenkins-build/build/workspace/ceph-pull-requests/src/common/RefCountedObj.h:39:12: note: in expansion of macro ‘dendl’
         << dendl;
            ^
/home/jenkins-build/build/workspace/ceph-pull-requests/src/common/dout.h:62:18: warning: unused variable ‘_dout_cct’ [-Wunused-variable]
     CephContext *_dout_cct = cct;     \
                  ^
/home/jenkins-build/build/workspace/ceph-pull-requests/src/common/dout.h:65:32: note: in expansion of macro ‘dout_impl’
 #define lsubdout(cct, sub, v)  dout_impl(cct, ceph_subsys_##sub, v) dout_prefix
                                ^
/home/jenkins-build/build/workspace/ceph-pull-requests/src/common/RefCountedObj.h:37:7: note: in expansion of macro ‘lsubdout’
       lsubdout(cct, refs, 1) << "RefCountedObject::get " << this << " "

@liewegas liewegas removed the needs-qa label May 19, 2017

@chardan chardan changed the title from osdc,mds,filestore,librbd,xio,messenger: migrate atomic_t to std::atomic to messenger,client,compressor: migrate atomic_t to std::atomic May 23, 2017

chardan added some commits May 23, 2017

client: migrate atomic_t to <atomic>
Signed-off-by: Jesse Williamson <jwilliamson@suse.de>
journal: migrate atomic_t to <atomic>
Signed-off-by: Jesse Williamson <jwilliamson@suse.de>
messenger: migrate atomic_t to std::atomic<>
Signed-off-by: Jesse Williamson <jwilliamson@suse.de>
compressor: migrate atomic_t to <atomic>
compare_exchange_strong() is used because on architectures without CaS instructions,
compare_exchange_weak() may fail.

Signed-off-by: Jesse Williamson <jwilliamson@suse.de>
msg: migrate atomic_t to <atomic> (async)
Signed-off-by: Jesse Williamson <jwilliamson@suse.de>
@chardan

This comment has been minimized.

Contributor

chardan commented May 28, 2017

Hopefully this is finally starting to get a bit less tangled.

@liewegas liewegas merged commit 3134fbb into ceph:master Jun 5, 2017

3 checks passed

Signed-off-by all commits in this PR are signed
Details
Unmodifed Submodules submodules for project are unmodified
Details
default Build finished.
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment