]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
osd/OSDMap: require CRUSH_MSR if any rule is msr, even if used by no pool
authorSamuel Just <sjust@redhat.com>
Wed, 28 Aug 2024 01:54:04 +0000 (18:54 -0700)
committerSamuel Just <sjust@redhat.com>
Wed, 28 Aug 2024 04:50:02 +0000 (04:50 +0000)
commit2130115ec2252e37403a377c482e9599a5c81a66
tree6afb44c90cc26513f5eeb58b0bc6b6f95786dd23
parent601fcfa91885fadd1028aff101cb731fa6aa6a38
osd/OSDMap: require CRUSH_MSR if any rule is msr, even if used by no pool

OSDMap::get_features is used by
OSDMonitor::validate_crush_against_features via
OSDMap::get_min_compat_client() to check whether changes to the crushmap
will require newer features than the existing require_min_compat_client
field.

Monitor commands which create rules from ec profiles may result in msr
rules.  While it might be harmless to allow msr rules to exist as long
as there aren't any pools actually using the rule, it's probably simpler
to disallow their creation in the first place until
require_min_compat_client is updated.

Signed-off-by: Samuel Just <sjust@redhat.com>
src/osd/OSDMap.cc