From: Samuel Just Date: Sat, 26 Oct 2013 00:36:40 +0000 (-0700) Subject: osd_types,OpRequest: move osd_req_id into OpRequest X-Git-Tag: v0.72-rc1~10^2~8 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=2cadc231ae4ab1bb2584d8d25c02434a34d15edc;p=ceph.git osd_types,OpRequest: move osd_req_id into OpRequest This way I can have OpRequest included from osd_types.h. Signed-off-by: Samuel Just --- diff --git a/src/osd/OpRequest.h b/src/osd/OpRequest.h index 2493135776e5..6d367db1a9e7 100644 --- a/src/osd/OpRequest.h +++ b/src/osd/OpRequest.h @@ -23,7 +23,28 @@ #include "msg/Message.h" #include #include "common/TrackedOp.h" -#include "osd/osd_types.h" + +/** + * osd request identifier + * + * caller name + incarnation# + tid to unique identify this request. + */ +struct osd_reqid_t { + entity_name_t name; // who + tid_t tid; + int32_t inc; // incarnation + + osd_reqid_t() + : tid(0), inc(0) {} + osd_reqid_t(const entity_name_t& a, int i, tid_t t) + : name(a), tid(t), inc(i) {} + + void encode(bufferlist &bl) const; + void decode(bufferlist::iterator &bl); + void dump(Formatter *f) const; + static void generate_test_instances(list& o); +}; +WRITE_CLASS_ENCODER(osd_reqid_t) /** * The OpRequest takes in a Message* and takes over a single reference diff --git a/src/osd/osd_types.h b/src/osd/osd_types.h index 54fd52106c6d..293870d09f6a 100644 --- a/src/osd/osd_types.h +++ b/src/osd/osd_types.h @@ -29,6 +29,7 @@ #include "common/Formatter.h" #include "common/hobject.h" #include "Watch.h" +#include "OpRequest.h" #define CEPH_OSD_ONDISK_MAGIC "ceph osd volume v026" @@ -49,27 +50,6 @@ typedef hobject_t collection_list_handle_t; typedef uint8_t shard_id_t; -/** - * osd request identifier - * - * caller name + incarnation# + tid to unique identify this request. - */ -struct osd_reqid_t { - entity_name_t name; // who - tid_t tid; - int32_t inc; // incarnation - - osd_reqid_t() - : tid(0), inc(0) {} - osd_reqid_t(const entity_name_t& a, int i, tid_t t) - : name(a), tid(t), inc(i) {} - - void encode(bufferlist &bl) const; - void decode(bufferlist::iterator &bl); - void dump(Formatter *f) const; - static void generate_test_instances(list& o); -}; -WRITE_CLASS_ENCODER(osd_reqid_t) inline ostream& operator<<(ostream& out, const osd_reqid_t& r) { return out << r.name << "." << r.inc << ":" << r.tid;