]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
librados: protect lookup_pool, get_pool_name with lock
authorSage Weil <sage@inktank.com>
Sat, 22 Sep 2012 05:36:08 +0000 (22:36 -0700)
committerSage Weil <sage@inktank.com>
Sat, 22 Sep 2012 05:36:08 +0000 (22:36 -0700)
Fixes: #2525
Signed-off-by: Sage Weil <sage@inktank.com>
src/librados/RadosClient.cc

index 08462a6c92a073a07bb25a49b6cc56379b99f6a9..90ea993a626bd0d821ea1194c3fd2417d0b844fd 100644 (file)
@@ -71,7 +71,9 @@ librados::RadosClient::RadosClient(CephContext *cct_)
 {
 }
 
-int64_t librados::RadosClient::lookup_pool(const char *name) {
+int64_t librados::RadosClient::lookup_pool(const char *name)
+{
+  Mutex::Locker l(lock);
   int64_t ret = osdmap.lookup_pg_pool_name(name);
   if (ret < 0)
     return -ENOENT;
@@ -80,6 +82,7 @@ int64_t librados::RadosClient::lookup_pool(const char *name) {
 
 const char *librados::RadosClient::get_pool_name(int64_t pool_id)
 {
+  Mutex::Locker l(lock);
   return osdmap.get_pool_name(pool_id);
 }