From: Jesse Williamson Date: Wed, 10 May 2017 11:04:25 +0000 (-0700) Subject: tools: change compare_exchange_weak to compare_exchange_strong X-Git-Tag: v12.0.3~39^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=e573245cf46b487f342f607cd1a73afcf1fe2957;p=ceph.git tools: change compare_exchange_weak to compare_exchange_strong On non x86 platforms without a dedicated compare-exchange instruction, std::compare_exchange_weak() could fail. Signed-off-by: Jesse Williamson --- diff --git a/src/tools/rbd_nbd/rbd-nbd.cc b/src/tools/rbd_nbd/rbd-nbd.cc index dd16ccd7304f..aa14570e1f35 100644 --- a/src/tools/rbd_nbd/rbd-nbd.cc +++ b/src/tools/rbd_nbd/rbd-nbd.cc @@ -125,7 +125,7 @@ private: void shutdown() { bool expected = false; - if (terminated.compare_exchange_weak(expected, true)) { + if (terminated.compare_exchange_strong(expected, true)) { ::shutdown(fd, SHUT_RDWR); Mutex::Locker l(lock);