From: Casey Bodley Date: Sat, 17 Sep 2022 18:46:19 +0000 (-0400) Subject: common/async: fix duplicate definition errors from SharedMutexImpl X-Git-Tag: testing/wip-pdonnell-testing-20240726.202642-debug~18^2 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=4d288ac31ced0f626b3fdbcb5957b45907299744;p=ceph-ci.git common/async: fix duplicate definition errors from SharedMutexImpl the linker complains that several SharedMutexImpl functions are duplicated, if "common/async/shared_mutex.h" is included by more than one translation unit added 'inline' to the function definitions so they're shared instead of duplicated Signed-off-by: Casey Bodley --- diff --git a/src/common/async/detail/shared_mutex.h b/src/common/async/detail/shared_mutex.h index 80a5c3bd7fd..6eae25b430d 100644 --- a/src/common/async/detail/shared_mutex.h +++ b/src/common/async/detail/shared_mutex.h @@ -156,7 +156,7 @@ inline void SharedMutexImpl::lock() } } -void SharedMutexImpl::lock(boost::system::error_code& ec) +inline void SharedMutexImpl::lock(boost::system::error_code& ec) { std::unique_lock lock{mutex}; @@ -181,7 +181,7 @@ inline bool SharedMutexImpl::try_lock() return false; } -void SharedMutexImpl::unlock() +inline void SharedMutexImpl::unlock() { RequestList granted; { @@ -245,7 +245,7 @@ inline void SharedMutexImpl::lock_shared() } } -void SharedMutexImpl::lock_shared(boost::system::error_code& ec) +inline void SharedMutexImpl::lock_shared(boost::system::error_code& ec) { std::unique_lock lock{mutex}; @@ -303,8 +303,8 @@ inline void SharedMutexImpl::cancel() complete(std::move(canceled), boost::asio::error::operation_aborted); } -void SharedMutexImpl::complete(RequestList&& requests, - boost::system::error_code ec) +inline void SharedMutexImpl::complete(RequestList&& requests, + boost::system::error_code ec) { while (!requests.empty()) { auto& request = requests.front();