From: Sage Weil Date: Fri, 20 Apr 2012 05:00:54 +0000 (-0700) Subject: osdmap: do not forcefeed preferred osd to crush X-Git-Tag: v0.47~94^2~9 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=f164b87785980e81f7c76457d49c5133ed154b4f;p=ceph.git osdmap: do not forcefeed preferred osd to crush Signed-off-by: Sage Weil --- diff --git a/src/osd/OSDMap.h b/src/osd/OSDMap.h index 04583a166a1..7cd8ed32183 100644 --- a/src/osd/OSDMap.h +++ b/src/osd/OSDMap.h @@ -462,16 +462,12 @@ private: ps_t pps = pool.raw_pg_to_pps(pg); // placement ps unsigned size = pool.get_size(); { - int preferred = pg.preferred(); - if (preferred >= max_osd || preferred >= crush.get_max_devices()) - preferred = -1; - assert(get_max_osd() >= crush.get_max_devices()); // what crush rule? int ruleno = crush.find_rule(pool.get_crush_ruleset(), pool.get_type(), size); if (ruleno >= 0) - crush.do_rule(ruleno, pps, osds, size, preferred, osd_weight); + crush.do_rule(ruleno, pps, osds, size, -1, osd_weight); } return osds.size();