From: Sage Weil Date: Tue, 1 Oct 2013 23:23:21 +0000 (-0700) Subject: osd/osd_types: object_info_t::get_flag_string() X-Git-Tag: v0.71~44^2~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=d42d2b97cf528a7211986241126bcc15c2ead35a;p=ceph.git osd/osd_types: object_info_t::get_flag_string() Stop adding these ad-hoc to the operator<<. Signed-off-by: Sage Weil --- diff --git a/src/osd/osd_types.cc b/src/osd/osd_types.cc index 1fecece92902..4ccad5eebb97 100644 --- a/src/osd/osd_types.cc +++ b/src/osd/osd_types.cc @@ -2968,10 +2968,8 @@ ostream& operator<<(ostream& out, const object_info_t& oi) out << " wrlock_by=" << oi.wrlock_by; else out << " " << oi.snaps; - if (oi.is_lost()) - out << " LOST"; - if (oi.is_whiteout()) - out << " WHITEOUT"; + if (oi.flags) + out << " " << oi.get_flag_string(); out << ")"; return out; } diff --git a/src/osd/osd_types.h b/src/osd/osd_types.h index 8e5b7319bd6e..72ee32c4cc58 100644 --- a/src/osd/osd_types.h +++ b/src/osd/osd_types.h @@ -2103,14 +2103,32 @@ struct object_info_t { // ... FLAG_USES_TMAP = 1<<8, } flag_t; + flag_t flags; + static string get_flag_string(flag_t flags) { + string s; + if (flags & FLAG_LOST) + s += "|lost"; + if (flags & FLAG_WHITEOUT) + s += "|whiteout"; + if (flags & FLAG_DIRTY) + s += "|dirty"; + if (flags & FLAG_USES_TMAP) + s += "|uses_tmap"; + if (s.length()) + return s.substr(1); + return s; + } + string get_flag_string() const { + return get_flag_string(flags); + } + osd_reqid_t wrlock_by; // [head] vector snaps; // [clone] uint64_t truncate_seq, truncate_size; - map, watch_info_t> watchers; void copy_user_bits(const object_info_t& other);