From af4ea0ab780cada9d81c43534675b67664cbd8d1 Mon Sep 17 00:00:00 2001 From: Brad Hubbard Date: Thu, 2 Aug 2018 10:33:42 +1000 Subject: [PATCH] mimic: mgr/MgrClient: Protect daemon_health_metrics Without holding the lock update_daemon_health() can race with send_report() corrupting the daemon_health_metrics vector. Fixes: http://tracker.ceph.com/issues/23352 Signed-off-by: Kjetil Joergensen Signed-off-by: Brad Hubbard (cherry picked from commit 4996506a6b4ab309110039ea29a075f14d09a379) --- src/mgr/MgrClient.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mgr/MgrClient.cc b/src/mgr/MgrClient.cc index 804c9d639e71..04b774796c97 100644 --- a/src/mgr/MgrClient.cc +++ b/src/mgr/MgrClient.cc @@ -512,6 +512,7 @@ int MgrClient::service_daemon_update_status( void MgrClient::update_daemon_health(std::vector&& metrics) { + Mutex::Locker l(lock); daemon_health_metrics = std::move(metrics); } -- 2.47.3