mds: fix crash in hash_into_rank_bucket() when max_mds is 0
When a CephFS cluster is paused (e.g. via `ceph fs set <fs> down true` or `ceph fs pause`) the MDS map's max_mds is set to 0. Any subsequent call to hash_into_rank_bucket() with max_mds == 0 triggers a crash: the jump-consistent-hash loop never executes (j starts at 0, condition j < max_mds is immediately false), leaving b = -1, so the final assert(result >= 0 && result < max_mds) aborts the daemon. Fixes: https://tracker.ceph.com/issues/76059 Signed-off-by: chungfengz <chungfengz@synology.com>
C
chungfengz committed
de9db7ce99fb6b3e4810be666b0fd5e8bbb31bf7
Parent: 44f1f41
Committed by Venky Shankar <vshankar@redhat.com>
on 6/8/2026, 9:05:19 AM