From: Ilya Dryomov Date: Sat, 16 May 2015 10:19:22 +0000 (+0300) Subject: OSDMonitor: fix prepare_pool_crush_ruleset() retval X-Git-Tag: v9.0.2~108^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=c00e3933cf38844625741da3aeece38d7101735e;p=ceph.git OSDMonitor: fix prepare_pool_crush_ruleset() retval CrushWrapper::get_osd_pool_default_crush_replicated_ruleset() returns -1 on error. Returning -EPERM for "No suitable CRUSH ruleset exists" is wrong. Signed-off-by: Ilya Dryomov --- diff --git a/src/mon/OSDMonitor.cc b/src/mon/OSDMonitor.cc index c3be47e75baa..1e8723d9336e 100644 --- a/src/mon/OSDMonitor.cc +++ b/src/mon/OSDMonitor.cc @@ -4193,8 +4193,9 @@ int OSDMonitor::prepare_pool_crush_ruleset(const unsigned pool_type, *crush_ruleset = osdmap.crush->get_osd_pool_default_crush_replicated_ruleset(g_ceph_context); if (*crush_ruleset < 0) { // Errors may happen e.g. if no valid ruleset is available - *ss << "No suitable CRUSH ruleset exists"; - return *crush_ruleset; + *ss << "No suitable CRUSH ruleset exists, check " + << "'osd pool default crush *' config options"; + return -ENOENT; } } else { return get_crush_ruleset(ruleset_name, crush_ruleset, ss);