common/web_cache: use ceph::shared_mutex instead of std::shared_mutex
WebCache declared its cache lock as a raw std::shared_mutex, bypassing the project's ceph::shared_mutex alias that every other rwlock user goes through (OSD::map_lock, TrackedOp::lock, ...). Align it with that convention: use ceph::make_shared_mutex() to construct the member, and drop the explicit <std::shared_mutex> template argument from each std::shared_lock/lock_guard so they deduce whichever type ceph::shared_mutex resolves to. This is idiom alignment only. The preceding commit fixes the Windows CI timeout; this one does not touch it. ceph::shared_mutex only differs from std::shared_mutex in debug builds, where it becomes ceph::shared_mutex_debug for lockdep tracking. On the mingw-llvm release build that times out unittest_web_cache, it still resolves straight to libc++'s std::shared_mutex. The O(N^2) writer-wakeup behavior under heavy exclusive-lock contention is unchanged. Verified locally: unittest_web_cache builds and passes, exercising the debug ceph::shared_mutex_debug path. Signed-off-by: Kefu Chai <k.chai@proxmox.com>
K
Kefu Chai committed
b1345f257619a654cf0b955511f3883d8e95bd67
Parent: 7240994