From: Didier Gazen Date: Thu, 15 Jun 2023 13:57:24 +0000 (+0200) Subject: mon/ConfigMonitor: update crush_location from osd entity X-Git-Tag: v16.2.14~26^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F52468%2Fhead;p=ceph.git mon/ConfigMonitor: update crush_location from osd entity For osd entities, crush_location needs to refer to osd's parent (host) so that 'ceph config set' using osd/host mask can work. Fixes: https://tracker.ceph.com/issues/48750 Signed-off-by: Didier Gazen (cherry picked from commit 5df2a597a5b90ed492b2cbc3599f2cfdababeb12) --- diff --git a/src/mon/ConfigMonitor.cc b/src/mon/ConfigMonitor.cc index c82a8417ab0e..1dd3747e73d0 100644 --- a/src/mon/ConfigMonitor.cc +++ b/src/mon/ConfigMonitor.cc @@ -932,6 +932,7 @@ bool ConfigMonitor::refresh_config(MonSession *s) string device_class; if (s->name.is_osd()) { + osdmap.crush->get_full_location(s->entity_name.to_str(), &crush_location); const char *c = osdmap.crush->get_item_class(s->name.num()); if (c) { device_class = c;