From: Sage Weil Date: Mon, 9 Jul 2018 13:07:29 +0000 (-0500) Subject: Merge remote-tracking branch 'private/wip-cx' X-Git-Tag: v14.0.1~913 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=6564adc87811a4d9807615163478f148591ebd37;p=ceph.git Merge remote-tracking branch 'private/wip-cx' Conflicts: src/include/ceph_features.h src/msg/async/AsyncConnection.cc src/msg/async/AsyncConnection.h - SERVER_NAUTLIUS feature recently added to default - msgr2 bool - ceph::shared_ptr -> std::shared_ptr --- 6564adc87811a4d9807615163478f148591ebd37 diff --cc src/include/ceph_features.h index 8c1945f0bb284,60bc1f3dee729..99f031ce4841a --- a/src/include/ceph_features.h +++ b/src/include/ceph_features.h @@@ -232,7 -231,7 +231,8 @@@ DEFINE_CEPH_FEATURE_DEPRECATED(63, 1, R CEPH_FEATURE_OSD_RECOVERY_DELETES | \ CEPH_FEATURE_SERVER_MIMIC | \ CEPH_FEATURE_RECOVERY_RESERVATION_2 | \ + CEPH_FEATURE_SERVER_NAUTILUS | \ + CEPH_FEATURE_CEPHX_V2 | \ 0ULL) #define CEPH_FEATURES_SUPPORTED_DEFAULT CEPH_FEATURES_ALL diff --cc src/mon/Monitor.cc index 12518f34c892d,9d31e19031b3e..11cfef0e671af --- a/src/mon/Monitor.cc +++ b/src/mon/Monitor.cc @@@ -2206,11 -2198,9 +2206,12 @@@ void Monitor::calc_quorum_requirements( required_features |= CEPH_FEATUREMASK_SERVER_LUMINOUS; } if (features.incompat.contains(CEPH_MON_FEATURE_INCOMPAT_MIMIC)) { - required_features |= CEPH_FEATUREMASK_SERVER_MIMIC; + required_features |= CEPH_FEATUREMASK_SERVER_MIMIC | + CEPH_FEATUREMASK_CEPHX_V2; } + if (features.incompat.contains(CEPH_MON_FEATURE_INCOMPAT_NAUTILUS)) { + required_features |= CEPH_FEATUREMASK_SERVER_NAUTILUS; + } // monmap if (monmap->get_required_features().contains_all( @@@ -2223,12 -2213,9 +2224,13 @@@ } if (monmap->get_required_features().contains_all( ceph::features::mon::FEATURE_MIMIC)) { - required_features |= CEPH_FEATUREMASK_SERVER_MIMIC; + required_features |= CEPH_FEATUREMASK_SERVER_MIMIC | + CEPH_FEATUREMASK_CEPHX_V2; } + if (monmap->get_required_features().contains_all( + ceph::features::mon::FEATURE_NAUTILUS)) { + required_features |= CEPH_FEATUREMASK_SERVER_NAUTILUS; + } dout(10) << __func__ << " required_features " << required_features << dendl; } diff --cc src/msg/async/AsyncConnection.cc index bd788d13bc126,77955af23fa19..5dd36eb8f34f4 --- a/src/msg/async/AsyncConnection.cc +++ b/src/msg/async/AsyncConnection.cc @@@ -131,8 -128,8 +131,9 @@@ AsyncConnection::AsyncConnection recv_start(0), recv_end(0), last_active(ceph::coarse_mono_clock::now()), inactive_timeout_us(cct->_conf->ms_tcp_read_timeout*1000*1000), - msg_left(0), cur_msg_size(0), got_bad_auth(false), authorizer(NULL), + msg_left(0), cur_msg_size(0), got_bad_auth(false), - authorizer(NULL), replacing(false), ++ authorizer(NULL), + msgr2(m2), replacing(false), is_reset_from_peer(false), once_ready(false), state_buffer(NULL), state_offset(0), worker(w), center(&w->center) { diff --cc src/msg/async/AsyncConnection.h index 061b41ca6352b,a8455853bf36c..53efda01f86cf --- a/src/msg/async/AsyncConnection.h +++ b/src/msg/async/AsyncConnection.h @@@ -371,7 -367,8 +371,8 @@@ class AsyncConnection : public Connecti uint64_t state_offset; Worker *worker; EventCenter *center; - ceph::shared_ptr session_security; + std::shared_ptr session_security; + std::unique_ptr authorizer_challenge; // accept side public: // used by eventcallback