diff --git a/src/msg/SimplePolicyMessenger.h b/src/msg/SimplePolicyMessenger.h index b283dca9af3e58..9fc7866fe33816 100644 --- a/src/msg/SimplePolicyMessenger.h +++ b/src/msg/SimplePolicyMessenger.h @@ -31,7 +31,7 @@ class SimplePolicyMessenger : public Messenger public: SimplePolicyMessenger(CephContext *cct, entity_name_t name, - string mname, uint64_t _nonce) + string mname, uint32_t _nonce) : Messenger(cct, name), policy_lock("SimplePolicyMessenger::policy_lock") { diff --git a/src/msg/async/AsyncMessenger.cc b/src/msg/async/AsyncMessenger.cc index 01d23cf278b1e8..6b011c4c4228c2 100644 --- a/src/msg/async/AsyncMessenger.cc +++ b/src/msg/async/AsyncMessenger.cc @@ -148,7 +148,7 @@ int Processor::bind(const entity_addr_t &bind_addr, const set& avoid_ports) msgr->set_myaddr(listen_addr); } entity_addr_t addr = msgr->get_myaddr(); - addr.nonce = nonce; + addr.set_nonce(nonce); msgr->set_myaddr(addr); msgr->init_local_connection(); @@ -172,7 +172,8 @@ int Processor::rebind(const set& avoid_ports) ldout(msgr->cct, 10) << __func__ << " Proc new nonce " << nonce << " and inst " << msgr->my_inst << dendl; ldout(msgr->cct, 10) << __func__ << " Proc will try " << msgr->my_inst.addr << " and avoid ports " << new_avoid << dendl; - return bind( msgr->my_inst.addr, new_avoid); + // return bind(msgr->my_inst.addr, new_avoid); + return bind(addr, new_avoid); } void Processor::start() @@ -267,7 +268,7 @@ class C_handle_reap : public EventCallback { */ AsyncMessenger::AsyncMessenger(CephContext *cct, entity_name_t name, - string mname, uint64_t _nonce) + string mname, uint32_t _nonce) : SimplePolicyMessenger(cct, name,mname, _nonce), dispatch_queue(cct, this, mname), lock("AsyncMessenger::lock"), diff --git a/src/msg/async/AsyncMessenger.h b/src/msg/async/AsyncMessenger.h index 5518f24f38ddaf..bcbca724727c74 100644 --- a/src/msg/async/AsyncMessenger.h +++ b/src/msg/async/AsyncMessenger.h @@ -49,7 +49,7 @@ class Processor { NetHandler net; Worker *worker; ServerSocket listen_socket; - uint64_t nonce; + uint32_t nonce; EventCallbackRef listen_handler; class C_processor_accept; @@ -84,7 +84,7 @@ class AsyncMessenger : public SimplePolicyMessenger { * be a value that will be repeated if the daemon restarts. */ AsyncMessenger(CephContext *cct, entity_name_t name, - string mname, uint64_t _nonce); + string mname, uint32_t _nonce); /** * Destroy the AsyncMessenger. Pretty simple since all the work is done @@ -227,7 +227,7 @@ class AsyncMessenger : public SimplePolicyMessenger { Mutex lock; // AsyncMessenger stuff /// approximately unique ID set by the Constructor for use in entity_addr_t - uint64_t nonce; + uint32_t nonce; /// true, specifying we haven't learned our addr; set false when we find it. // maybe this should be protected by the lock? diff --git a/src/msg/simple/SimpleMessenger.cc b/src/msg/simple/SimpleMessenger.cc index 8d5e77a6671d37..0172ae42e5fe9a 100644 --- a/src/msg/simple/SimpleMessenger.cc +++ b/src/msg/simple/SimpleMessenger.cc @@ -39,7 +39,7 @@ static ostream& _prefix(std::ostream *_dout, SimpleMessenger *msgr) { */ SimpleMessenger::SimpleMessenger(CephContext *cct, entity_name_t name, - string mname, uint64_t _nonce) + string mname, uint32_t _nonce) : SimplePolicyMessenger(cct, name,mname, _nonce), accepter(this, _nonce), dispatch_queue(cct, this, mname), diff --git a/src/msg/simple/SimpleMessenger.h b/src/msg/simple/SimpleMessenger.h index ac0c8293ec632d..34057085d2a79e 100644 --- a/src/msg/simple/SimpleMessenger.h +++ b/src/msg/simple/SimpleMessenger.h @@ -82,7 +82,7 @@ class SimpleMessenger : public SimplePolicyMessenger { * features The local features bits for the local_connection */ SimpleMessenger(CephContext *cct, entity_name_t name, - string mname, uint64_t _nonce); + string mname, uint32_t _nonce); /** * Destroy the SimpleMessenger. Pretty simple since all the work is done @@ -262,7 +262,7 @@ class SimpleMessenger : public SimplePolicyMessenger { // SimpleMessenger stuff /// approximately unique ID set by the Constructor for use in entity_addr_t - uint64_t nonce; + uint32_t nonce; /// overall lock used for SimpleMessenger data structures Mutex lock; /// true, specifying we haven't learned our addr; set false when we find it.