Since we filter monitor addresses based on ms_mode, check that at
least one address was found.
Otherwise, we mismatch arguments when calling sysfs/add_single_major
which emits a misleading error message to dmesg:
libceph: resolve 'name=user1' (ret=-3): failed
libceph: parse_ips bad ip 'name=user1,key=client.user1'
Fixes: https://tracker.ceph.com/issues/54128
Signed-off-by: Burt Holzman <burt@fnal.gov>
(cherry picked from commit
0076ffc86e043af7aedc127df8661eaf87fc1c58)
}
}
+ if (oss.tellp() == 0) {
+ std::cerr << "rbd: failed to get mon address (possible ms_mode mismatch)" << std::endl;
+ return -ENOENT;
+ }
+
oss << " name=" << cct->_conf->name.get_id();
KeyRing keyring;