summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorColin Patrick McCabe <cmccabe@alumni.cmu.edu>2011-06-17 13:49:33 -0700
committerColin Patrick McCabe <cmccabe@alumni.cmu.edu>2011-06-20 16:41:42 -0700
commitba61191021a75e8d543d7df9eae40effe2b0099f (patch)
tree7867d7c6c89284eb3ba2de7c01bbba28186b5cea
parentb0cb48083db97da936a82caf6acb610ab3fd2637 (diff)
downloadceph-ba61191021a75e8d543d7df9eae40effe2b0099f.tar.gz
msg: remove globals
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
-rw-r--r--src/messages/MAuth.h4
-rw-r--r--src/messages/MAuthReply.h4
-rw-r--r--src/messages/MCacheExpire.h4
-rw-r--r--src/messages/MClientCapRelease.h4
-rw-r--r--src/messages/MClientCaps.h4
-rw-r--r--src/messages/MClientLease.h4
-rw-r--r--src/messages/MClientReconnect.h4
-rw-r--r--src/messages/MClientReply.h4
-rw-r--r--src/messages/MClientRequest.h4
-rw-r--r--src/messages/MClientRequestForward.h4
-rw-r--r--src/messages/MClientSession.h4
-rw-r--r--src/messages/MClientSnap.h4
-rw-r--r--src/messages/MDentryLink.h4
-rw-r--r--src/messages/MDentryUnlink.h4
-rw-r--r--src/messages/MDirUpdate.h4
-rw-r--r--src/messages/MDiscover.h4
-rw-r--r--src/messages/MDiscoverReply.h4
-rw-r--r--src/messages/MExportCaps.h4
-rw-r--r--src/messages/MExportCapsAck.h4
-rw-r--r--src/messages/MExportDir.h4
-rw-r--r--src/messages/MExportDirAck.h4
-rw-r--r--src/messages/MExportDirCancel.h4
-rw-r--r--src/messages/MExportDirDiscover.h4
-rw-r--r--src/messages/MExportDirDiscoverAck.h4
-rw-r--r--src/messages/MExportDirFinish.h4
-rw-r--r--src/messages/MExportDirNotify.h4
-rw-r--r--src/messages/MExportDirNotifyAck.h4
-rw-r--r--src/messages/MExportDirPrep.h4
-rw-r--r--src/messages/MExportDirPrepAck.h4
-rw-r--r--src/messages/MForward.h8
-rw-r--r--src/messages/MGenericMessage.h4
-rw-r--r--src/messages/MGetPoolStats.h4
-rw-r--r--src/messages/MGetPoolStatsReply.h4
-rw-r--r--src/messages/MHeartbeat.h4
-rw-r--r--src/messages/MInodeFileCaps.h4
-rw-r--r--src/messages/MLock.h4
-rw-r--r--src/messages/MLog.h4
-rw-r--r--src/messages/MLogAck.h4
-rw-r--r--src/messages/MMDSBeacon.h4
-rw-r--r--src/messages/MMDSCacheRejoin.h4
-rw-r--r--src/messages/MMDSFindIno.h4
-rw-r--r--src/messages/MMDSFindInoReply.h4
-rw-r--r--src/messages/MMDSFragmentNotify.h4
-rw-r--r--src/messages/MMDSLoadTargets.h4
-rw-r--r--src/messages/MMDSMap.h4
-rw-r--r--src/messages/MMDSResolve.h4
-rw-r--r--src/messages/MMDSResolveAck.h4
-rw-r--r--src/messages/MMDSSlaveRequest.h4
-rw-r--r--src/messages/MMDSTableRequest.h4
-rw-r--r--src/messages/MMonCommand.h4
-rw-r--r--src/messages/MMonCommandAck.h4
-rw-r--r--src/messages/MMonElection.h4
-rw-r--r--src/messages/MMonGetMap.h4
-rw-r--r--src/messages/MMonGlobalID.h4
-rw-r--r--src/messages/MMonMap.h4
-rw-r--r--src/messages/MMonObserve.h4
-rw-r--r--src/messages/MMonObserveNotify.h4
-rw-r--r--src/messages/MMonPaxos.h4
-rw-r--r--src/messages/MMonSubscribe.h4
-rw-r--r--src/messages/MMonSubscribeAck.h4
-rw-r--r--src/messages/MOSDAlive.h4
-rw-r--r--src/messages/MOSDBoot.h4
-rw-r--r--src/messages/MOSDFailure.h4
-rw-r--r--src/messages/MOSDMap.h4
-rw-r--r--src/messages/MOSDOp.h4
-rw-r--r--src/messages/MOSDOpReply.h4
-rw-r--r--src/messages/MOSDPGCreate.h4
-rw-r--r--src/messages/MOSDPGInfo.h4
-rw-r--r--src/messages/MOSDPGLog.h4
-rw-r--r--src/messages/MOSDPGMissing.h4
-rw-r--r--src/messages/MOSDPGNotify.h4
-rw-r--r--src/messages/MOSDPGQuery.h4
-rw-r--r--src/messages/MOSDPGRemove.h4
-rw-r--r--src/messages/MOSDPGTemp.h4
-rw-r--r--src/messages/MOSDPGTrim.h4
-rw-r--r--src/messages/MOSDPing.h4
-rw-r--r--src/messages/MOSDRepScrub.h4
-rw-r--r--src/messages/MOSDScrub.h4
-rw-r--r--src/messages/MOSDSubOp.h4
-rw-r--r--src/messages/MOSDSubOpReply.h4
-rw-r--r--src/messages/MPGStats.h4
-rw-r--r--src/messages/MPGStatsAck.h4
-rw-r--r--src/messages/MPing.h4
-rw-r--r--src/messages/MPoolOp.h4
-rw-r--r--src/messages/MPoolOpReply.h4
-rw-r--r--src/messages/MRemoveSnaps.h4
-rw-r--r--src/messages/MRoute.h12
-rw-r--r--src/messages/MStatfs.h4
-rw-r--r--src/messages/MStatfsReply.h4
-rw-r--r--src/messages/MWatchNotify.h4
-rw-r--r--src/messages/PaxosServiceMessage.h4
-rw-r--r--src/mon/Monitor.cc8
-rw-r--r--src/msg/Message.cc40
-rw-r--r--src/msg/Message.h15
-rw-r--r--src/msg/SimpleMessenger.cc4
95 files changed, 222 insertions, 221 deletions
diff --git a/src/messages/MAuth.h b/src/messages/MAuth.h
index 89d7f705303..2d16cf66cb7 100644
--- a/src/messages/MAuth.h
+++ b/src/messages/MAuth.h
@@ -33,13 +33,13 @@ public:
out << "auth(proto " << protocol << " " << auth_payload.length() << " bytes)";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(protocol, p);
::decode(auth_payload, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(protocol, payload);
::encode(auth_payload, payload);
diff --git a/src/messages/MAuthReply.h b/src/messages/MAuthReply.h
index ae620e2bbf8..9066064fc2f 100644
--- a/src/messages/MAuthReply.h
+++ b/src/messages/MAuthReply.h
@@ -45,7 +45,7 @@ public:
o << ")";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(protocol, p);
::decode(result, p);
@@ -53,7 +53,7 @@ public:
::decode(result_bl, p);
::decode(result_msg, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(protocol, payload);
::encode(result, payload);
::encode(global_id, payload);
diff --git a/src/messages/MCacheExpire.h b/src/messages/MCacheExpire.h
index ab32658c04d..5bf36978967 100644
--- a/src/messages/MCacheExpire.h
+++ b/src/messages/MCacheExpire.h
@@ -69,13 +69,13 @@ public:
realms[df] = r;
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(from, p);
::decode(realms, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(from, payload);
::encode(realms, payload);
}
diff --git a/src/messages/MClientCapRelease.h b/src/messages/MClientCapRelease.h
index 49d6a2eb814..ad054ce2f31 100644
--- a/src/messages/MClientCapRelease.h
+++ b/src/messages/MClientCapRelease.h
@@ -36,12 +36,12 @@ public:
out << "client_cap_release(" << head.num << ")";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(head, p);
::decode_nohead(head.num, caps, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
head.num = caps.size();
::encode(head, payload);
::encode_nohead(caps, payload);
diff --git a/src/messages/MClientCaps.h b/src/messages/MClientCaps.h
index 9de19f9afbb..c7caa7f7239 100644
--- a/src/messages/MClientCaps.h
+++ b/src/messages/MClientCaps.h
@@ -133,7 +133,7 @@ public:
out << ")";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(head, p);
::decode_nohead(head.snap_trace_len, snapbl, p);
@@ -146,7 +146,7 @@ public:
if (header.version >= 2)
::decode(flockbl, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
head.snap_trace_len = snapbl.length();
head.xattr_len = xattrbl.length();
::encode(head, payload);
diff --git a/src/messages/MClientLease.h b/src/messages/MClientLease.h
index 0fd3946168e..cab695b55b8 100644
--- a/src/messages/MClientLease.h
+++ b/src/messages/MClientLease.h
@@ -66,12 +66,12 @@ public:
out << ")";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(h, p);
::decode(dname, p);
}
- virtual void encode_payload() {
+ virtual void encode_payload(CephContext *cct) {
::encode(h, payload);
::encode(dname, payload);
}
diff --git a/src/messages/MClientReconnect.h b/src/messages/MClientReconnect.h
index bdde430a1f6..7afdd256250 100644
--- a/src/messages/MClientReconnect.h
+++ b/src/messages/MClientReconnect.h
@@ -48,7 +48,7 @@ public:
realms.push_back(r);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
if (connection->has_feature(CEPH_FEATURE_FLOCK)) {
// new protocol
header.version = 2;
@@ -62,7 +62,7 @@ public:
}
::encode_nohead(realms, data);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = data.begin();
if (header.version >= 2) {
// new protocol
diff --git a/src/messages/MClientReply.h b/src/messages/MClientReply.h
index 6db029a4bf4..5b9913e7b1a 100644
--- a/src/messages/MClientReply.h
+++ b/src/messages/MClientReply.h
@@ -229,7 +229,7 @@ public:
}
// serialization
- virtual void decode_payload() {
+ virtual void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(head, p);
::decode(trace_bl, p);
@@ -237,7 +237,7 @@ public:
::decode(snapbl, p);
assert(p.end());
}
- virtual void encode_payload() {
+ virtual void encode_payload(CephContext *cct) {
::encode(head, payload);
::encode(trace_bl, payload);
::encode(extra_bl, payload);
diff --git a/src/messages/MClientRequest.h b/src/messages/MClientRequest.h
index 56147418419..51f55343dae 100644
--- a/src/messages/MClientRequest.h
+++ b/src/messages/MClientRequest.h
@@ -141,7 +141,7 @@ public:
int get_dentry_wanted() { return get_flags() & CEPH_MDS_FLAG_WANT_DENTRY; }
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(head, p);
::decode(path, p);
@@ -149,7 +149,7 @@ public:
::decode_nohead(head.num_releases, releases, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
head.num_releases = releases.size();
::encode(head, payload);
::encode(path, payload);
diff --git a/src/messages/MClientRequestForward.h b/src/messages/MClientRequestForward.h
index 046eea46830..4f64acb648b 100644
--- a/src/messages/MClientRequestForward.h
+++ b/src/messages/MClientRequestForward.h
@@ -46,13 +46,13 @@ public:
<< ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(dest_mds, payload);
::encode(num_fwd, payload);
::encode(client_must_resend, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(dest_mds, p);
::decode(num_fwd, p);
diff --git a/src/messages/MClientSession.h b/src/messages/MClientSession.h
index 7f9f31aa3f1..7c8728195f4 100644
--- a/src/messages/MClientSession.h
+++ b/src/messages/MClientSession.h
@@ -55,11 +55,11 @@ public:
out << ")";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(head, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(head, payload);
}
};
diff --git a/src/messages/MClientSnap.h b/src/messages/MClientSnap.h
index 80226ba3719..85d2257e171 100644
--- a/src/messages/MClientSnap.h
+++ b/src/messages/MClientSnap.h
@@ -43,7 +43,7 @@ public:
out << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
head.num_split_inos = split_inos.size();
head.num_split_realms = split_realms.size();
head.trace_len = bl.length();
@@ -52,7 +52,7 @@ public:
::encode_nohead(split_realms, payload);
::encode_nohead(bl, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(head, p);
::decode_nohead(head.num_split_inos, split_inos, p);
diff --git a/src/messages/MDentryLink.h b/src/messages/MDentryLink.h
index 7468691e41a..72cedc923f9 100644
--- a/src/messages/MDentryLink.h
+++ b/src/messages/MDentryLink.h
@@ -44,14 +44,14 @@ public:
o << "dentry_link(" << dirfrag << " " << dn << ")";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(dirfrag, p);
::decode(dn, p);
::decode(is_primary, p);
::decode(bl, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(dirfrag, payload);
::encode(dn, payload);
::encode(is_primary, payload);
diff --git a/src/messages/MDentryUnlink.h b/src/messages/MDentryUnlink.h
index a2162d0ab22..49a181d52fa 100644
--- a/src/messages/MDentryUnlink.h
+++ b/src/messages/MDentryUnlink.h
@@ -41,13 +41,13 @@ public:
o << "dentry_unlink(" << dirfrag << " " << dn << ")";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(dirfrag, p);
::decode(dn, p);
::decode(straybl, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(dirfrag, payload);
::encode(dn, payload);
::encode(straybl, payload);
diff --git a/src/messages/MDirUpdate.h b/src/messages/MDirUpdate.h
index f58e32eb210..5db7d9dc5c0 100644
--- a/src/messages/MDirUpdate.h
+++ b/src/messages/MDirUpdate.h
@@ -62,7 +62,7 @@ public:
out << "dir_update(" << get_dirfrag() << ")";
}
- virtual void decode_payload() {
+ virtual void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(from_mds, p);
::decode(dirfrag, p);
@@ -72,7 +72,7 @@ public:
::decode(path, p);
}
- virtual void encode_payload() {
+ virtual void encode_payload(CephContext *cct) {
::encode(from_mds, payload);
::encode(dirfrag, payload);
::encode(dir_rep, payload);
diff --git a/src/messages/MDiscover.h b/src/messages/MDiscover.h
index 9ba31a62288..6c4ff1b5342 100644
--- a/src/messages/MDiscover.h
+++ b/src/messages/MDiscover.h
@@ -78,7 +78,7 @@ public:
out << ")";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(base_ino, p);
::decode(base_dir_frag, p);
@@ -88,7 +88,7 @@ public:
::decode(want_base_dir, p);
::decode(want_xlocked, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(base_ino, payload);
::encode(base_dir_frag, payload);
::encode(snapid, payload);
diff --git a/src/messages/MDiscoverReply.h b/src/messages/MDiscoverReply.h
index 67433a150cc..92d1b0a50c4 100644
--- a/src/messages/MDiscoverReply.h
+++ b/src/messages/MDiscoverReply.h
@@ -180,7 +180,7 @@ public:
// ...
- virtual void decode_payload() {
+ virtual void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(base_ino, p);
::decode(base_dir_frag, p);
@@ -199,7 +199,7 @@ public:
if (header.version >= 2)
::decode(wanted_ino, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
header.version = 2;
::encode(base_ino, payload);
::encode(base_dir_frag, payload);
diff --git a/src/messages/MExportCaps.h b/src/messages/MExportCaps.h
index d8137abfbab..97b01caea78 100644
--- a/src/messages/MExportCaps.h
+++ b/src/messages/MExportCaps.h
@@ -36,12 +36,12 @@ public:
o << "export_caps(" << ino << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(ino, payload);
::encode(cap_bl, payload);
::encode(client_map, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(ino, p);
::decode(cap_bl, p);
diff --git a/src/messages/MExportCapsAck.h b/src/messages/MExportCapsAck.h
index 83f20209d7c..070601128ff 100644
--- a/src/messages/MExportCapsAck.h
+++ b/src/messages/MExportCapsAck.h
@@ -36,10 +36,10 @@ public:
o << "export_caps_ack(" << ino << ")";
}
- virtual void encode_payload() {
+ virtual void encode_payload(CephContext *cct) {
::encode(ino, payload);
}
- virtual void decode_payload() {
+ virtual void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(ino, p);
}
diff --git a/src/messages/MExportDir.h b/src/messages/MExportDir.h
index fc6d35fa7a3..c2cb7ec82ba 100644
--- a/src/messages/MExportDir.h
+++ b/src/messages/MExportDir.h
@@ -44,13 +44,13 @@ public:
bounds.push_back(df);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(dirfrag, payload);
::encode(bounds, payload);
::encode(export_data, payload);
::encode(client_map, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(dirfrag, p);
::decode(bounds, p);
diff --git a/src/messages/MExportDirAck.h b/src/messages/MExportDirAck.h
index 57fbf0ab950..126bcf0cde2 100644
--- a/src/messages/MExportDirAck.h
+++ b/src/messages/MExportDirAck.h
@@ -35,11 +35,11 @@ public:
o << "export_ack(" << dirfrag << ")";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(dirfrag, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(dirfrag, payload);
}
diff --git a/src/messages/MExportDirCancel.h b/src/messages/MExportDirCancel.h
index 1ffec3644b7..a0399995e1c 100644
--- a/src/messages/MExportDirCancel.h
+++ b/src/messages/MExportDirCancel.h
@@ -37,10 +37,10 @@ public:
o << "export_cancel(" << dirfrag << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(dirfrag, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(dirfrag, p);
}
diff --git a/src/messages/MExportDirDiscover.h b/src/messages/MExportDirDiscover.h
index ea9d5df12bc..c7ac8a12a23 100644
--- a/src/messages/MExportDirDiscover.h
+++ b/src/messages/MExportDirDiscover.h
@@ -50,14 +50,14 @@ public:
o << "export_discover(" << dirfrag << " " << path << ")";
}
- virtual void decode_payload() {
+ virtual void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(from, p);
::decode(dirfrag, p);
::decode(path, p);
}
- virtual void encode_payload() {
+ virtual void encode_payload(CephContext *cct) {
::encode(from, payload);
::encode(dirfrag, payload);
::encode(path, payload);
diff --git a/src/messages/MExportDirDiscoverAck.h b/src/messages/MExportDirDiscoverAck.h
index 2272c853ce5..ae2704cabb6 100644
--- a/src/messages/MExportDirDiscoverAck.h
+++ b/src/messages/MExportDirDiscoverAck.h
@@ -45,12 +45,12 @@ public:
o << " failure)";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(dirfrag, p);
::decode(success, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(dirfrag, payload);
::encode(success, payload);
}
diff --git a/src/messages/MExportDirFinish.h b/src/messages/MExportDirFinish.h
index e5b7646dd67..46c511f3f85 100644
--- a/src/messages/MExportDirFinish.h
+++ b/src/messages/MExportDirFinish.h
@@ -37,10 +37,10 @@ public:
o << "export_finish(" << dirfrag << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(dirfrag, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(dirfrag, p);
}
diff --git a/src/messages/MExportDirNotify.h b/src/messages/MExportDirNotify.h
index bed2a6655ee..4ceb35b2c09 100644
--- a/src/messages/MExportDirNotify.h
+++ b/src/messages/MExportDirNotify.h
@@ -59,14 +59,14 @@ public:
bounds.push_back(*i);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(base, payload);
::encode(ack, payload);
::encode(old_auth, payload);
::encode(new_auth, payload);
::encode(bounds, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(base, p);
::decode(ack, p);
diff --git a/src/messages/MExportDirNotifyAck.h b/src/messages/MExportDirNotifyAck.h
index 714bbe97a2f..9d82013efb5 100644
--- a/src/messages/MExportDirNotifyAck.h
+++ b/src/messages/MExportDirNotifyAck.h
@@ -39,10 +39,10 @@ public:
o << "export_notify_ack(" << dirfrag << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(dirfrag, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(dirfrag, p);
}
diff --git a/src/messages/MExportDirPrep.h b/src/messages/MExportDirPrep.h
index 000ff610aed..65b4e789d39 100644
--- a/src/messages/MExportDirPrep.h
+++ b/src/messages/MExportDirPrep.h
@@ -63,7 +63,7 @@ public:
bystanders.insert(who);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(dirfrag, p);
::decode(basedir, p);
@@ -72,7 +72,7 @@ public:
::decode(bystanders, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(dirfrag, payload);
::encode(basedir, payload);
::encode(bounds, payload);
diff --git a/src/messages/MExportDirPrepAck.h b/src/messages/MExportDirPrepAck.h
index c6eacb3f4f9..5a8e5684c9e 100644
--- a/src/messages/MExportDirPrepAck.h
+++ b/src/messages/MExportDirPrepAck.h
@@ -37,11 +37,11 @@ public:
o << "export_prep_ack(" << dirfrag << ")";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(dirfrag, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(dirfrag, payload);
}
};
diff --git a/src/messages/MForward.h b/src/messages/MForward.h
index f188b0c7e72..17ef0995948 100644
--- a/src/messages/MForward.h
+++ b/src/messages/MForward.h
@@ -46,19 +46,19 @@ private:
}
public:
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(tid, payload);
::encode(client, payload);
::encode(client_caps, payload);
- encode_message(msg, payload);
+ encode_message(cct, msg, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(tid, p);
::decode(client, p);
::decode(client_caps, p);
- msg = (PaxosServiceMessage *)decode_message(p);
+ msg = (PaxosServiceMessage *)decode_message(cct, p);
}
const char *get_type_name() { return "forward"; }
diff --git a/src/messages/MGenericMessage.h b/src/messages/MGenericMessage.h
index 7b0d32312ba..38a26d490c0 100644
--- a/src/messages/MGenericMessage.h
+++ b/src/messages/MGenericMessage.h
@@ -32,8 +32,8 @@ class MGenericMessage : public Message {
const char *get_type_name() { return tname; }
- void decode_payload() { }
- void encode_payload() { }
+ void decode_payload(CephContext *cct) { }
+ void encode_payload(CephContext *cct) { }
};
#endif
diff --git a/src/messages/MGetPoolStats.h b/src/messages/MGetPoolStats.h
index 9ba3907cbcd..ea14eee8ac1 100644
--- a/src/messages/MGetPoolStats.h
+++ b/src/messages/MGetPoolStats.h
@@ -39,12 +39,12 @@ public:
out << "getpoolstats(" << get_tid() << " " << pools << " v" << version << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(fsid, payload);
::encode(pools, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(fsid, p);
diff --git a/src/messages/MGetPoolStatsReply.h b/src/messages/MGetPoolStatsReply.h
index de6c4b5664e..549f8258d78 100644
--- a/src/messages/MGetPoolStatsReply.h
+++ b/src/messages/MGetPoolStatsReply.h
@@ -37,12 +37,12 @@ public:
out << "getpoolstatsreply(" << get_tid() << " v" << version << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(fsid, payload);
::encode(pool_stats, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(fsid, p);
diff --git a/src/messages/MHeartbeat.h b/src/messages/MHeartbeat.h
index 17551e73708..62a70919ab8 100644
--- a/src/messages/MHeartbeat.h
+++ b/src/messages/MHeartbeat.h
@@ -44,12 +44,12 @@ private:
public:
const char *get_type_name() { return "HB"; }
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(load, payload);
::encode(beat, payload);
::encode(import_map, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(load, p);
::decode(beat, p);
diff --git a/src/messages/MInodeFileCaps.h b/src/messages/MInodeFileCaps.h
index 8b24aac4075..24182f6a8cc 100644
--- a/src/messages/MInodeFileCaps.h
+++ b/src/messages/MInodeFileCaps.h
@@ -40,12 +40,12 @@ private:
public:
const char *get_type_name() { return "Icap";}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(from, payload);
::encode(ino, payload);
::encode(caps, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(from, p);
::decode(ino, p);
diff --git a/src/messages/MLock.h b/src/messages/MLock.h
index 5069aadcf4a..fa4d975f046 100644
--- a/src/messages/MLock.h
+++ b/src/messages/MLock.h
@@ -72,7 +72,7 @@ public:
this->lockdata = lockdata;
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(asker, p);
::decode(action, p);
@@ -81,7 +81,7 @@ public:
::decode(object_info, p);
::decode(lockdata, p);
}
- virtual void encode_payload() {
+ virtual void encode_payload(CephContext *cct) {
::encode(asker, payload);
::encode(action, payload);
::encode(reqid, payload);
diff --git a/src/messages/MLog.h b/src/messages/MLog.h
index 604df33d473..ee00ffe704b 100644
--- a/src/messages/MLog.h
+++ b/src/messages/MLog.h
@@ -41,12 +41,12 @@ public:
out << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(fsid, payload);
::encode(entries, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(fsid, p);
diff --git a/src/messages/MLogAck.h b/src/messages/MLogAck.h
index 27b098276a1..a623b445017 100644
--- a/src/messages/MLogAck.h
+++ b/src/messages/MLogAck.h
@@ -31,11 +31,11 @@ public:
out << "log(last " << last << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(fsid, payload);
::encode(last, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(fsid, p);
::decode(last, p);
diff --git a/src/messages/MMDSBeacon.h b/src/messages/MMDSBeacon.h
index eea9e6eae19..cc338b75917 100644
--- a/src/messages/MMDSBeacon.h
+++ b/src/messages/MMDSBeacon.h
@@ -65,7 +65,7 @@ public:
<< " seq " << seq << " v" << version << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
header.version = 2;
paxos_encode();
::encode(fsid, payload);
@@ -77,7 +77,7 @@ public:
::encode(standby_for_name, payload);
::encode(compat, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(fsid, p);
diff --git a/src/messages/MMDSCacheRejoin.h b/src/messages/MMDSCacheRejoin.h
index 6138911d73d..1633f7c62e7 100644
--- a/src/messages/MMDSCacheRejoin.h
+++ b/src/messages/MMDSCacheRejoin.h
@@ -254,7 +254,7 @@ public:
}
// -- encoding --
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(op, payload);
::encode(strong_inodes, payload);
::encode(inode_base, payload);
@@ -271,7 +271,7 @@ public:
::encode(authpinned_dentries, payload);
::encode(xlocked_dentries, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(op, p);
::decode(strong_inodes, p);
diff --git a/src/messages/MMDSFindIno.h b/src/messages/MMDSFindIno.h
index 204aa85ad1d..a5d707c10c0 100644
--- a/src/messages/MMDSFindIno.h
+++ b/src/messages/MMDSFindIno.h
@@ -30,11 +30,11 @@ struct MMDSFindIno : public Message {
out << "findino(" << tid << " " << ino << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(tid, payload);
::encode(ino, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(tid, p);
::decode(ino, p);
diff --git a/src/messages/MMDSFindInoReply.h b/src/messages/MMDSFindInoReply.h
index a3b3460277f..99149e58e65 100644
--- a/src/messages/MMDSFindInoReply.h
+++ b/src/messages/MMDSFindInoReply.h
@@ -30,11 +30,11 @@ struct MMDSFindInoReply : public Message {
out << "findinoreply(" << tid << " " << path << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(tid, payload);
::encode(path, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(tid, p);
::decode(path, p);
diff --git a/src/messages/MMDSFragmentNotify.h b/src/messages/MMDSFragmentNotify.h
index 4457e2917ae..a9859509d79 100644
--- a/src/messages/MMDSFragmentNotify.h
+++ b/src/messages/MMDSFragmentNotify.h
@@ -45,13 +45,13 @@ public:
<< " " << (int)bits << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(ino, payload);
::encode(basefrag, payload);
::encode(bits, payload);
::encode(basebl, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(ino, p);
::decode(basefrag, p);
diff --git a/src/messages/MMDSLoadTargets.h b/src/messages/MMDSLoadTargets.h
index e207372276a..21709d55c12 100644
--- a/src/messages/MMDSLoadTargets.h
+++ b/src/messages/MMDSLoadTargets.h
@@ -41,14 +41,14 @@ public:
o << "mds_load_targets(" << global_id << " " << targets << ")";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(global_id, p);
::decode(targets, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(global_id, payload);
::encode(targets, payload);
diff --git a/src/messages/MMDSMap.h b/src/messages/MMDSMap.h
index c41183d03d5..28c8169627b 100644
--- a/src/messages/MMDSMap.h
+++ b/src/messages/MMDSMap.h
@@ -70,13 +70,13 @@ public:
}
// marshalling
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(fsid, p);
::decode(epoch, p);
::decode(encoded, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(fsid, payload);
::encode(epoch, payload);
::encode(encoded, payload);
diff --git a/src/messages/MMDSResolve.h b/src/messages/MMDSResolve.h
index 747f9a67bb3..96989aedad4 100644
--- a/src/messages/MMDSResolve.h
+++ b/src/messages/MMDSResolve.h
@@ -53,12 +53,12 @@ public:
slave_requests.push_back(reqid);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(subtrees, payload);
::encode(ambiguous_imports, payload);
::encode(slave_requests, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(subtrees, p);
::decode(ambiguous_imports, p);
diff --git a/src/messages/MMDSResolveAck.h b/src/messages/MMDSResolveAck.h
index da9a7a2ca00..c3b14c95a2b 100644
--- a/src/messages/MMDSResolveAck.h
+++ b/src/messages/MMDSResolveAck.h
@@ -45,11 +45,11 @@ public:
abort.push_back(r);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(commit, payload);
::encode(abort, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(commit, p);
::decode(abort, p);
diff --git a/src/messages/MMDSSlaveRequest.h b/src/messages/MMDSSlaveRequest.h
index 6ebbe00c70c..bb21d9ebae2 100644
--- a/src/messages/MMDSSlaveRequest.h
+++ b/src/messages/MMDSSlaveRequest.h
@@ -110,7 +110,7 @@ private:
~MMDSSlaveRequest() {}
public:
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(reqid, payload);
::encode(op, payload);
::encode(lock_type, payload);
@@ -125,7 +125,7 @@ public:
::encode(srci_replica, payload);
::encode(stray, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(reqid, p);
::decode(op, p);
diff --git a/src/messages/MMDSTableRequest.h b/src/messages/MMDSTableRequest.h
index c3f7c860e1f..b9dcaf5668c 100644
--- a/src/messages/MMDSTableRequest.h
+++ b/src/messages/MMDSTableRequest.h
@@ -46,7 +46,7 @@ public:
o << ")";
}
- virtual void decode_payload() {
+ virtual void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(table, p);
::decode(op, p);
@@ -54,7 +54,7 @@ public:
::decode(bl, p);
}
- virtual void encode_payload() {
+ virtual void encode_payload(CephContext *cct) {
::encode(table, payload);
::encode(op, payload);
::encode(reqid, payload);
diff --git a/src/messages/MMonCommand.h b/src/messages/MMonCommand.h
index dcf2ceb489f..55e1aecd58d 100644
--- a/src/messages/MMonCommand.h
+++ b/src/messages/MMonCommand.h
@@ -44,12 +44,12 @@ public:
o << " v " << version << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(fsid, payload);
::encode(cmd, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(fsid, p);
diff --git a/src/messages/MMonCommandAck.h b/src/messages/MMonCommandAck.h
index 58aa08d3423..92bf9361bb6 100644
--- a/src/messages/MMonCommandAck.h
+++ b/src/messages/MMonCommandAck.h
@@ -36,13 +36,13 @@ public:
o << "mon_command_ack(" << cmd << "=" << r << " " << rs << " v" << version << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(r, payload);
::encode(rs, payload);
::encode(cmd, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(r, p);
diff --git a/src/messages/MMonElection.h b/src/messages/MMonElection.h
index 4398dd5ee33..6ca0159ebaf 100644
--- a/src/messages/MMonElection.h
+++ b/src/messages/MMonElection.h
@@ -55,13 +55,13 @@ public:
out << "election(" << get_opname(op) << " " << epoch << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(op, payload);
::encode(epoch, payload);
::encode(monmap_bl, payload);
::encode(quorum, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(op, p);
::decode(epoch, p);
diff --git a/src/messages/MMonGetMap.h b/src/messages/MMonGetMap.h
index 59ca1d6022d..e145763bd7b 100644
--- a/src/messages/MMonGetMap.h
+++ b/src/messages/MMonGetMap.h
@@ -28,8 +28,8 @@ private:
public:
const char *get_type_name() { return "mon_getmap"; }
- void encode_payload() { }
- void decode_payload() { }
+ void encode_payload(CephContext *cct) { }
+ void decode_payload(CephContext *cct) { }
};
#endif
diff --git a/src/messages/MMonGlobalID.h b/src/messages/MMonGlobalID.h
index 45489c7258a..2d966f1661b 100644
--- a/src/messages/MMonGlobalID.h
+++ b/src/messages/MMonGlobalID.h
@@ -29,12 +29,12 @@ public:
out << "global_id (" << old_max_id << ")";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(old_max_id, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(old_max_id, payload);
}
diff --git a/src/messages/MMonMap.h b/src/messages/MMonMap.h
index 14bf5220e1d..26f04e0a5cc 100644
--- a/src/messages/MMonMap.h
+++ b/src/messages/MMonMap.h
@@ -31,10 +31,10 @@ private:
public:
const char *get_type_name() { return "mon_map"; }
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(monmapbl, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(monmapbl, p);
}
diff --git a/src/messages/MMonObserve.h b/src/messages/MMonObserve.h
index 4ec4fb4998f..56cc904c6e3 100644
--- a/src/messages/MMonObserve.h
+++ b/src/messages/MMonObserve.h
@@ -39,13 +39,13 @@ public:
o << "observe(" << machine_id << " v" << ver << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(fsid, payload);
::encode(machine_id, payload);
::encode(ver, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(fsid, p);
diff --git a/src/messages/MMonObserveNotify.h b/src/messages/MMonObserveNotify.h
index 034b6799fa9..ee19bc711dc 100644
--- a/src/messages/MMonObserveNotify.h
+++ b/src/messages/MMonObserveNotify.h
@@ -40,7 +40,7 @@ public:
o << " v" << version << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(fsid, payload);
::encode(machine_id, payload);
@@ -48,7 +48,7 @@ public:
::encode(ver, payload);
::encode(is_latest, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(fsid, p);
diff --git a/src/messages/MMonPaxos.h b/src/messages/MMonPaxos.h
index 935125dd8dd..f3f9416f1b9 100644
--- a/src/messages/MMonPaxos.h
+++ b/src/messages/MMonPaxos.h
@@ -86,7 +86,7 @@ public:
out << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
if (connection->has_feature(CEPH_FEATURE_MONCLOCKCHECK))
header.version = 1;
::encode(epoch, payload);
@@ -104,7 +104,7 @@ public:
::encode(latest_value, payload);
::encode(values, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(epoch, p);
::decode(op, p);
diff --git a/src/messages/MMonSubscribe.h b/src/messages/MMonSubscribe.h
index 0d94ff05c31..6ec157921fb 100644
--- a/src/messages/MMonSubscribe.h
+++ b/src/messages/MMonSubscribe.h
@@ -46,7 +46,7 @@ public:
o << "mon_subscribe(" << what << ")";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
if (header.version < 2) {
map<string, ceph_mon_subscribe_item_old> oldwhat;
@@ -67,7 +67,7 @@ public:
::decode(what, p);
}
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
if (get_connection()->has_feature(CEPH_FEATURE_SUBSCRIBE2)) {
header.version = 2;
::encode(what, payload);
diff --git a/src/messages/MMonSubscribeAck.h b/src/messages/MMonSubscribeAck.h
index dff6de1e89b..d4f1fae6930 100644
--- a/src/messages/MMonSubscribeAck.h
+++ b/src/messages/MMonSubscribeAck.h
@@ -36,12 +36,12 @@ public:
o << "mon_subscribe_ack(" << interval << "s)";
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(interval, p);
::decode(fsid, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(interval, payload);
::encode(fsid, payload);
}
diff --git a/src/messages/MOSDAlive.h b/src/messages/MOSDAlive.h
index cac0a30ca12..4fb8d039fba 100644
--- a/src/messages/MOSDAlive.h
+++ b/src/messages/MOSDAlive.h
@@ -29,11 +29,11 @@ private:
~MOSDAlive() {}
public:
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(want, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(want, p);
diff --git a/src/messages/MOSDBoot.h b/src/messages/MOSDBoot.h
index 8bf368eb19c..74c22303f4e 100644
--- a/src/messages/MOSDBoot.h
+++ b/src/messages/MOSDBoot.h
@@ -41,14 +41,14 @@ public:
out << "osd_boot(osd" << sb.whoami << " v" << version << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
header.version = 2;
paxos_encode();
::encode(sb, payload);
::encode(hb_addr, payload);
::encode(cluster_addr, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(sb, p);
diff --git a/src/messages/MOSDFailure.h b/src/messages/MOSDFailure.h
index 0f68f5b51d6..5954123d4f7 100644
--- a/src/messages/MOSDFailure.h
+++ b/src/messages/MOSDFailure.h
@@ -38,7 +38,7 @@ public:
bool if_osd_failed() { return is_failed; }
epoch_t get_epoch() { return epoch; }
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(fsid, p);
@@ -48,7 +48,7 @@ public:
::decode(is_failed, p);
else is_failed = true;
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
header.version = 2;
paxos_encode();
::encode(fsid, payload);
diff --git a/src/messages/MOSDMap.h b/src/messages/MOSDMap.h
index 39d938933de..58a7be90f77 100644
--- a/src/messages/MOSDMap.h
+++ b/src/messages/MOSDMap.h
@@ -57,13 +57,13 @@ private:
public:
// marshalling
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(fsid, p);
::decode(incremental_maps, p);
::decode(maps, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(fsid, payload);
::encode(incremental_maps, payload);
::encode(maps, payload);
diff --git a/src/messages/MOSDOp.h b/src/messages/MOSDOp.h
index 234901abec8..e9e877d9ac5 100644
--- a/src/messages/MOSDOp.h
+++ b/src/messages/MOSDOp.h
@@ -170,7 +170,7 @@ public:
}
// marshalling
- virtual void encode_payload() {
+ virtual void encode_payload(CephContext *cct) {
for (unsigned i = 0; i < ops.size(); i++) {
if (ceph_osd_op_type_multi(ops[i].op.op)) {
@@ -262,7 +262,7 @@ struct ceph_osd_request_head {
}
}
- virtual void decode_payload() {
+ virtual void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
if (header.version < 2) {
diff --git a/src/messages/MOSDOpReply.h b/src/messages/MOSDOpReply.h
index 94c614db2fa..21b36a26a52 100644
--- a/src/messages/MOSDOpReply.h
+++ b/src/messages/MOSDOpReply.h
@@ -82,7 +82,7 @@ private:
public:
// marshalling
- virtual void decode_payload() {
+ virtual void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(head, p);
ops.resize(head.num_ops);
@@ -91,7 +91,7 @@ public:
}
::decode_nohead(head.object_len, oid.name, p);
}
- virtual void encode_payload() {
+ virtual void encode_payload(CephContext *cct) {
head.num_ops = ops.size();
head.object_len = oid.name.length();
::encode(head, payload);
diff --git a/src/messages/MOSDPGCreate.h b/src/messages/MOSDPGCreate.h
index 5ec5f2f993c..b006be56b6b 100644
--- a/src/messages/MOSDPGCreate.h
+++ b/src/messages/MOSDPGCreate.h
@@ -54,11 +54,11 @@ private:
public:
const char *get_type_name() { return "pg_create"; }
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(epoch, payload);
::encode(mkpg, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(epoch, p);
::decode(mkpg, p);
diff --git a/src/messages/MOSDPGInfo.h b/src/messages/MOSDPGInfo.h
index 886216a42a0..9668a8416cf 100644
--- a/src/messages/MOSDPGInfo.h
+++ b/src/messages/MOSDPGInfo.h
@@ -39,11 +39,11 @@ public:
out << "pg_info(" << pg_info.size() << " pgs e" << epoch << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(epoch, payload);
::encode(pg_info, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(epoch, p);
::decode(pg_info, p);
diff --git a/src/messages/MOSDPGLog.h b/src/messages/MOSDPGLog.h
index 384319f6163..b733b8d1884 100644
--- a/src/messages/MOSDPGLog.h
+++ b/src/messages/MOSDPGLog.h
@@ -42,13 +42,13 @@ public:
out << "pg_log(" << info.pgid << " e" << epoch << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(epoch, payload);
::encode(info, payload);
::encode(log, payload);
::encode(missing, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(epoch, p);
::decode(info, p);
diff --git a/src/messages/MOSDPGMissing.h b/src/messages/MOSDPGMissing.h
index 1918ffd50c6..4b099997b69 100644
--- a/src/messages/MOSDPGMissing.h
+++ b/src/messages/MOSDPGMissing.h
@@ -41,12 +41,12 @@ public:
out << "pg_missing(" << info.pgid << " e" << epoch << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(epoch, payload);
::encode(info, payload);
::encode(missing, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(epoch, p);
::decode(info, p);
diff --git a/src/messages/MOSDPGNotify.h b/src/messages/MOSDPGNotify.h
index ce4f92d6467..565864de2a7 100644
--- a/src/messages/MOSDPGNotify.h
+++ b/src/messages/MOSDPGNotify.h
@@ -43,11 +43,11 @@ private:
public:
const char *get_type_name() { return "PGnot"; }
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(epoch, payload);
::encode(pg_list, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(epoch, p);
::decode(pg_list, p);
diff --git a/src/messages/MOSDPGQuery.h b/src/messages/MOSDPGQuery.h
index 6fffc0892c5..123cff37523 100644
--- a/src/messages/MOSDPGQuery.h
+++ b/src/messages/MOSDPGQuery.h
@@ -41,11 +41,11 @@ private:
public:
const char *get_type_name() { return "PGq"; }
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(epoch, payload);
::encode(pg_list, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(epoch, p);
::decode(pg_list, p);
diff --git a/src/messages/MOSDPGRemove.h b/src/messages/MOSDPGRemove.h
index f6acf4cf0a9..85177687092 100644
--- a/src/messages/MOSDPGRemove.h
+++ b/src/messages/MOSDPGRemove.h
@@ -39,11 +39,11 @@ private:
public:
const char *get_type_name() { return "PGrm"; }
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(epoch, payload);
::encode(pg_list, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(epoch, p);
::decode(pg_list, p);
diff --git a/src/messages/MOSDPGTemp.h b/src/messages/MOSDPGTemp.h
index 2f28423cf7d..9476662e783 100644
--- a/src/messages/MOSDPGTemp.h
+++ b/src/messages/MOSDPGTemp.h
@@ -30,12 +30,12 @@ private:
~MOSDPGTemp() {}
public:
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(map_epoch, payload);
::encode(pg_temp, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(map_epoch, p);
diff --git a/src/messages/MOSDPGTrim.h b/src/messages/MOSDPGTrim.h
index 4592a4ad83e..24bebf8f4b9 100644
--- a/src/messages/MOSDPGTrim.h
+++ b/src/messages/MOSDPGTrim.h
@@ -38,12 +38,12 @@ public:
out << "pg_trim(" << pgid << " to " << trim_to << " e" << epoch << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(epoch, payload);
::encode(pgid, payload);
::encode(trim_to, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(epoch, p);
::decode(pgid, p);
diff --git a/src/messages/MOSDPing.h b/src/messages/MOSDPing.h
index d6b40768ed4..f350c409821 100644
--- a/src/messages/MOSDPing.h
+++ b/src/messages/MOSDPing.h
@@ -49,7 +49,7 @@ private:
~MOSDPing() {}
public:
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(fsid, p);
::decode(map_epoch, p);
@@ -57,7 +57,7 @@ public:
::decode(op, p);
::decode(peer_stat, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(fsid, payload);
::encode(map_epoch, payload);
::encode(peer_as_of_epoch, payload);
diff --git a/src/messages/MOSDRepScrub.h b/src/messages/MOSDRepScrub.h
index 67fa723d1c7..fe85473ae2d 100644
--- a/src/messages/MOSDRepScrub.h
+++ b/src/messages/MOSDRepScrub.h
@@ -46,12 +46,12 @@ public:
out << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(pgid, payload);
::encode(scrub_from, payload);
::encode(map_epoch, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(pgid, p);
::decode(scrub_from, p);
diff --git a/src/messages/MOSDScrub.h b/src/messages/MOSDScrub.h
index ec81e73016c..da7884a1c8a 100644
--- a/src/messages/MOSDScrub.h
+++ b/src/messages/MOSDScrub.h
@@ -50,12 +50,12 @@ public:
out << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(fsid, payload);
::encode(scrub_pgs, payload);
::encode(repair, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(fsid, p);
::decode(scrub_pgs, p);
diff --git a/src/messages/MOSDSubOp.h b/src/messages/MOSDSubOp.h
index f2ab1698e13..75eaf912486 100644
--- a/src/messages/MOSDSubOp.h
+++ b/src/messages/MOSDSubOp.h
@@ -67,7 +67,7 @@ public:
bool first, complete;
- virtual void decode_payload() {
+ virtual void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(map_epoch, p);
::decode(reqid, p);
@@ -108,7 +108,7 @@ public:
::decode(oloc, p);
}
- virtual void encode_payload() {
+ virtual void encode_payload(CephContext *cct) {
header.version = 3;
::encode(map_epoch, payload);
diff --git a/src/messages/MOSDSubOpReply.h b/src/messages/MOSDSubOpReply.h
index fffe722aaf7..4abccef94f2 100644
--- a/src/messages/MOSDSubOpReply.h
+++ b/src/messages/MOSDSubOpReply.h
@@ -50,7 +50,7 @@ public:
map<string,bufferptr> attrset;
- virtual void decode_payload() {
+ virtual void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(map_epoch, p);
::decode(reqid, p);
@@ -69,7 +69,7 @@ public:
::decode(peer_stat, p);
::decode(attrset, p);
}
- virtual void encode_payload() {
+ virtual void encode_payload(CephContext *cct) {
::encode(map_epoch, payload);
::encode(reqid, payload);
::encode(pgid, payload);
diff --git a/src/messages/MPGStats.h b/src/messages/MPGStats.h
index 22248d736c0..3fc666067e8 100644
--- a/src/messages/MPGStats.h
+++ b/src/messages/MPGStats.h
@@ -39,7 +39,7 @@ public:
out << "pg_stats(" << pg_stat.size() << " pgs v " << version << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(fsid, payload);
::encode(osd_stat, payload);
@@ -47,7 +47,7 @@ public:
::encode(epoch, payload);
::encode(had_map_for, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(fsid, p);
diff --git a/src/messages/MPGStatsAck.h b/src/messages/MPGStatsAck.h
index 808f4b726b6..9ca1c72fb66 100644
--- a/src/messages/MPGStatsAck.h
+++ b/src/messages/MPGStatsAck.h
@@ -32,10 +32,10 @@ public:
out << "pg_stats_ack(" << pg_stat.size() << " pgs)";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(pg_stat, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(pg_stat, p);
}
diff --git a/src/messages/MPing.h b/src/messages/MPing.h
index 6788066ce99..d6175dc6191 100644
--- a/src/messages/MPing.h
+++ b/src/messages/MPing.h
@@ -27,8 +27,8 @@ private:
~MPing() {}
public:
- void decode_payload() { }
- void encode_payload() { }
+ void decode_payload(CephContext *cct) { }
+ void encode_payload(CephContext *cct) { }
const char *get_type_name() { return "ping"; }
};
diff --git a/src/messages/MPoolOp.h b/src/messages/MPoolOp.h
index b9444427cf6..284257efd86 100644
--- a/src/messages/MPoolOp.h
+++ b/src/messages/MPoolOp.h
@@ -52,7 +52,7 @@ public:
<< ", tid" << get_tid() << " " << name << " v" << version << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
header.version = 4;
paxos_encode();
::encode(fsid, payload);
@@ -65,7 +65,7 @@ public:
::encode(pad, payload); /* for v3->v4 encoding change */
::encode(crush_rule, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(fsid, p);
diff --git a/src/messages/MPoolOpReply.h b/src/messages/MPoolOpReply.h
index 6d9e185aee3..61958d83754 100644
--- a/src/messages/MPoolOpReply.h
+++ b/src/messages/MPoolOpReply.h
@@ -50,7 +50,7 @@ public:
<< get_tid() << " v" << version << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(fsid, payload);
::encode(replyCode, payload);
@@ -61,7 +61,7 @@ public:
} else
::encode(false, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(fsid, p);
diff --git a/src/messages/MRemoveSnaps.h b/src/messages/MRemoveSnaps.h
index a201455d197..c2f47087ea5 100644
--- a/src/messages/MRemoveSnaps.h
+++ b/src/messages/MRemoveSnaps.h
@@ -35,11 +35,11 @@ public:
out << "remove_snaps(" << snaps << " v" << version << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(snaps, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(snaps, p);
diff --git a/src/messages/MRoute.h b/src/messages/MRoute.h
index 076b8f99670..cec976f1708 100644
--- a/src/messages/MRoute.h
+++ b/src/messages/MRoute.h
@@ -28,10 +28,10 @@ struct MRoute : public Message {
MRoute() : Message(MSG_ROUTE), msg(NULL) {}
MRoute(uint64_t t, Message *m) :
Message(MSG_ROUTE), session_mon_tid(t), msg(m) {}
- MRoute(bufferlist bl, entity_inst_t i) :
+ MRoute(CephContext *cct, bufferlist bl, entity_inst_t i) :
Message(MSG_ROUTE), session_mon_tid(0), dest(i) {
bufferlist::iterator p = bl.begin();
- msg = decode_message(p);
+ msg = decode_message(cct, p);
}
private:
~MRoute() {
@@ -39,16 +39,16 @@ private:
}
public:
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(session_mon_tid, p);
::decode(dest, p);
- msg = decode_message(p);
+ msg = decode_message(cct, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(session_mon_tid, payload);
::encode(dest, payload);
- encode_message(msg, payload);
+ encode_message(cct, msg, payload);
}
const char *get_type_name() { return "route"; }
diff --git a/src/messages/MStatfs.h b/src/messages/MStatfs.h
index 94eb4b7a4e7..c93fd95b373 100644
--- a/src/messages/MStatfs.h
+++ b/src/messages/MStatfs.h
@@ -38,11 +38,11 @@ public:
out << "statfs(" << get_tid() << " v" << version << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
paxos_encode();
::encode(fsid, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
paxos_decode(p);
::decode(fsid, p);
diff --git a/src/messages/MStatfsReply.h b/src/messages/MStatfsReply.h
index 3e42d4716a0..18488f9d6d0 100644
--- a/src/messages/MStatfsReply.h
+++ b/src/messages/MStatfsReply.h
@@ -32,10 +32,10 @@ public:
out << "statfs_reply(" << header.tid << ")";
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
::encode(h, payload);
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
bufferlist::iterator p = payload.begin();
::decode(h, p);
}
diff --git a/src/messages/MWatchNotify.h b/src/messages/MWatchNotify.h
index 59f7bf477d4..d0fc4858c45 100644
--- a/src/messages/MWatchNotify.h
+++ b/src/messages/MWatchNotify.h
@@ -33,7 +33,7 @@ private:
~MWatchNotify() {}
public:
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
uint8_t msg_ver;
bufferlist::iterator p = payload.begin();
::decode(msg_ver, p);
@@ -42,7 +42,7 @@ public:
::decode(ver, p);
::decode(notify_id, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
uint8_t msg_ver = 0;
::encode(msg_ver, payload);
::encode(opcode, payload);
diff --git a/src/messages/PaxosServiceMessage.h b/src/messages/PaxosServiceMessage.h
index cebc0c88c93..d5996ebcd59 100644
--- a/src/messages/PaxosServiceMessage.h
+++ b/src/messages/PaxosServiceMessage.h
@@ -30,12 +30,12 @@ class PaxosServiceMessage : public Message {
::decode(session_mon_tid, p);
}
- void encode_payload() {
+ void encode_payload(CephContext *cct) {
assert(0);
paxos_encode();
}
- void decode_payload() {
+ void decode_payload(CephContext *cct) {
assert(0);
bufferlist::iterator p = payload.begin();
paxos_decode(p);
diff --git a/src/mon/Monitor.cc b/src/mon/Monitor.cc
index 55e00699fdd..d9a5d792f6b 100644
--- a/src/mon/Monitor.cc
+++ b/src/mon/Monitor.cc
@@ -499,7 +499,7 @@ void Monitor::forward_request_leader(PaxosServiceMessage *req)
} else if (session && !session->closed) {
RoutedRequest *rr = new RoutedRequest;
rr->tid = ++routed_request_tid;
- encode_message(req, rr->request_bl);
+ encode_message(&g_ceph_context, req, rr->request_bl);
rr->session = (MonSession *)session->get();
routed_requests[rr->tid] = rr;
session->routed_request_tids.insert(rr->tid);
@@ -556,13 +556,13 @@ void Monitor::try_send_message(Message *m, entity_inst_t to)
dout(10) << "try_send_message " << *m << " to " << to << dendl;
bufferlist bl;
- encode_message(m, bl);
+ encode_message(&g_ceph_context, m, bl);
messenger->send_message(m, to);
for (int i=0; i<(int)monmap->size(); i++) {
if (i != rank)
- messenger->send_message(new MRoute(bl, to), monmap->get_inst(i));
+ messenger->send_message(new MRoute(cct, bl, to), monmap->get_inst(i));
}
}
@@ -632,7 +632,7 @@ void Monitor::resend_routed_requests()
RoutedRequest *rr = p->second;
bufferlist::iterator q = rr->request_bl.begin();
- PaxosServiceMessage *req = (PaxosServiceMessage *)decode_message(q);
+ PaxosServiceMessage *req = (PaxosServiceMessage *)decode_message(cct, q);
dout(10) << " resend to mon" << mon << " tid " << rr->tid << " " << *req << dendl;
MForward *forward = new MForward(rr->tid, req, rr->session->caps);
diff --git a/src/msg/Message.cc b/src/msg/Message.cc
index 24512e0bd10..f228e2d9904 100644
--- a/src/msg/Message.cc
+++ b/src/msg/Message.cc
@@ -132,37 +132,37 @@ using namespace std;
#define DEBUGLVL 10 // debug level of output
-void Message::encode()
+void Message::encode(CephContext *cct)
{
// encode and copy out of *m
if (empty_payload())
- encode_payload();
+ encode_payload(cct);
calc_front_crc();
- if (!g_conf->ms_nocrc)
+ if (!cct->_conf->ms_nocrc)
calc_data_crc();
else
footer.flags = (unsigned)footer.flags | CEPH_MSG_FOOTER_NOCRC;
}
-Message *decode_message(ceph_msg_header& header, ceph_msg_footer& footer,
+Message *decode_message(CephContext *cct, ceph_msg_header& header, ceph_msg_footer& footer,
bufferlist& front, bufferlist& middle, bufferlist& data)
{
// verify crc
- if (!g_conf->ms_nocrc) {
+ if (!cct->_conf->ms_nocrc) {
__u32 front_crc = front.crc32c(0);
__u32 middle_crc = middle.crc32c(0);
if (front_crc != footer.front_crc) {
- dout(0) << "bad crc in front " << front_crc << " != exp " << footer.front_crc << dendl;
- dout(20) << " ";
+ ldout(cct, 0) << "bad crc in front " << front_crc << " != exp " << footer.front_crc << dendl;
+ ldout(cct, 20) << " ";
front.hexdump(*_dout);
*_dout << dendl;
return 0;
}
if (middle_crc != footer.middle_crc) {
- dout(0) << "bad crc in middle " << middle_crc << " != exp " << footer.middle_crc << dendl;
- dout(20) << " ";
+ ldout(cct, 0) << "bad crc in middle " << middle_crc << " != exp " << footer.middle_crc << dendl;
+ ldout(cct, 20) << " ";
middle.hexdump(*_dout);
*_dout << dendl;
return 0;
@@ -171,8 +171,8 @@ Message *decode_message(ceph_msg_header& header, ceph_msg_footer& footer,
if ((footer.flags & CEPH_MSG_FOOTER_NOCRC) == 0) {
__u32 data_crc = data.crc32c(0);
if (data_crc != footer.data_crc) {
- dout(0) << "bad crc in data " << data_crc << " != exp " << footer.data_crc << dendl;
- dout(20) << " ";
+ ldout(cct, 0) << "bad crc in data " << data_crc << " != exp " << footer.data_crc << dendl;
+ ldout(cct, 20) << " ";
data.hexdump(*_dout);
*_dout << dendl;
return 0;
@@ -508,8 +508,8 @@ Message *decode_message(ceph_msg_header& header, ceph_msg_footer& footer,
break;
default:
- dout(0) << "can't decode unknown message type " << type << " MSG_AUTH=" << CEPH_MSG_AUTH << dendl;
- if (g_conf->ms_die_on_bad_msg)
+ ldout(cct, 0) << "can't decode unknown message type " << type << " MSG_AUTH=" << CEPH_MSG_AUTH << dendl;
+ if (cct->_conf->ms_die_on_bad_msg)
assert(0);
return 0;
}
@@ -521,13 +521,13 @@ Message *decode_message(ceph_msg_header& header, ceph_msg_footer& footer,
m->set_data(data);
try {
- m->decode_payload();
+ m->decode_payload(cct);
}
catch (const buffer::error &e) {
- dout(0) << "failed to decode message of type " << type
+ ldout(cct, 0) << "failed to decode message of type " << type
<< " v" << header.version
<< ": " << e.what() << dendl;
- if (g_conf->ms_die_on_bad_msg)
+ if (cct->_conf->ms_die_on_bad_msg)
assert(0);
return 0;
}
@@ -537,10 +537,10 @@ Message *decode_message(ceph_msg_header& header, ceph_msg_footer& footer,
}
-void encode_message(Message *msg, bufferlist& payload)
+void encode_message(CephContext *cct, Message *msg, bufferlist& payload)
{
bufferlist front, middle, data;
- msg->encode();
+ msg->encode(cct);
::encode(msg->get_header(), payload);
::encode(msg->get_footer(), payload);
::encode(msg->get_payload(), payload);
@@ -548,7 +548,7 @@ void encode_message(Message *msg, bufferlist& payload)
::encode(msg->get_data(), payload);
}
-Message *decode_message(bufferlist::iterator& p)
+Message *decode_message(CephContext *cct, bufferlist::iterator& p)
{
ceph_msg_header h;
ceph_msg_footer f;
@@ -558,5 +558,5 @@ Message *decode_message(bufferlist::iterator& p)
::decode(fr, p);
::decode(mi, p);
::decode(da, p);
- return decode_message(h, f, fr, mi, da);
+ return decode_message(cct, h, f, fr, mi, da);
}
diff --git a/src/msg/Message.h b/src/msg/Message.h
index 88467134b58..9fc877433cb 100644
--- a/src/msg/Message.h
+++ b/src/msg/Message.h
@@ -422,18 +422,19 @@ public:
}
// virtual bits
- virtual void decode_payload() = 0;
- virtual void encode_payload() = 0;
+ virtual void decode_payload(CephContext *cct) = 0;
+ virtual void encode_payload(CephContext *cct) = 0;
virtual const char *get_type_name() = 0;
virtual void print(ostream& out) {
out << get_type_name();
}
- void encode();
+ void encode(CephContext *cct);
};
-extern Message *decode_message(ceph_msg_header &header, ceph_msg_footer& footer,
- bufferlist& front, bufferlist& middle, bufferlist& data);
+extern Message *decode_message(CephContext *cct, ceph_msg_header &header,
+ ceph_msg_footer& footer, bufferlist& front,
+ bufferlist& middle, bufferlist& data);
inline ostream& operator<<(ostream& out, Message& m) {
m.print(out);
if (m.get_header().version)
@@ -441,7 +442,7 @@ inline ostream& operator<<(ostream& out, Message& m) {
return out;
}
-extern void encode_message(Message *m, bufferlist& bl);
-extern Message *decode_message(bufferlist::iterator& bl);
+extern void encode_message(CephContext *cct, Message *m, bufferlist& bl);
+extern Message *decode_message(CephContext *cct, bufferlist::iterator& bl);
#endif
diff --git a/src/msg/SimpleMessenger.cc b/src/msg/SimpleMessenger.cc
index 1a388cee4b2..ee4d4766df6 100644
--- a/src/msg/SimpleMessenger.cc
+++ b/src/msg/SimpleMessenger.cc
@@ -1727,7 +1727,7 @@ void SimpleMessenger::Pipe::writer()
m->set_connection(connection_state->get());
// encode and copy out of *m
- m->encode();
+ m->encode(msgr->cct);
ldout(msgr->cct,20) << "writer sending " << m->get_seq() << " " << m << dendl;
int rc = write_message(m);
@@ -1956,7 +1956,7 @@ int SimpleMessenger::Pipe::read_message(Message **pm)
ldout(msgr->cct,20) << "reader got " << front.length() << " + " << middle.length() << " + " << data.length()
<< " byte message" << dendl;
- message = decode_message(header, footer, front, middle, data);
+ message = decode_message(msgr->cct, header, footer, front, middle, data);
if (!message) {
ret = -EINVAL;
goto out_dethrottle;