]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: new encoding for pool_stat_t
authorSage Weil <sage.weil@dreamhost.com>
Thu, 2 Feb 2012 20:40:56 +0000 (12:40 -0800)
committerSage Weil <sage.weil@dreamhost.com>
Fri, 10 Feb 2012 05:58:07 +0000 (21:58 -0800)
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
src/osd/osd_types.cc

index 2ebec3b4e05932db7dcd8cbb58d604aa3ac996b0..2222cc8387ae2bcfd5a37364a5baa19588c7aa3c 100644 (file)
@@ -1003,18 +1003,17 @@ void pool_stat_t::dump(Formatter *f) const
 
 void pool_stat_t::encode(bufferlist &bl) const
 {
-  __u8 v = 4;
-  ::encode(v, bl);
+  ENCODE_START(5, 5, bl);
   ::encode(stats, bl);
   ::encode(log_size, bl);
   ::encode(ondisk_log_size, bl);
+  ENCODE_FINISH(bl);
 }
 
 void pool_stat_t::decode(bufferlist::iterator &bl)
 {
-  __u8 v;
-  ::decode(v, bl);
-  if (v >= 4) {
+  DECODE_START_LEGACY_COMPAT_LEN(5, 5, 5, bl);
+  if (struct_v >= 4) {
     ::decode(stats, bl);
     ::decode(log_size, bl);
     ::decode(ondisk_log_size, bl);
@@ -1029,16 +1028,17 @@ void pool_stat_t::decode(bufferlist::iterator &bl)
     ::decode(stats.sum.num_objects_degraded, bl);
     ::decode(log_size, bl);
     ::decode(ondisk_log_size, bl);
-    if (v >= 2) {
+    if (struct_v >= 2) {
       ::decode(stats.sum.num_rd, bl);
       ::decode(stats.sum.num_rd_kb, bl);
       ::decode(stats.sum.num_wr, bl);
       ::decode(stats.sum.num_wr_kb, bl);
     }
-    if (v >= 3) {
+    if (struct_v >= 3) {
       ::decode(stats.sum.num_objects_unfound, bl);
     }
   }
+  DECODE_FINISH(bl);
 }
 
 void pool_stat_t::generate_test_instances(list<pool_stat_t*>& o)