diff options
author | Ilya Dryomov <ilya.dryomov@inktank.com> | 2014-05-13 11:19:26 +0400 |
---|---|---|
committer | Yan, Zheng <zheng.z.yan@intel.com> | 2014-06-06 09:29:57 +0800 |
commit | 513a8243d67f8e8d27f2883bd2f18bc87c7ca376 (patch) | |
tree | fd782278a338b2e8b695f47950628dc82d246c5d /net/ceph/debugfs.c | |
parent | 002b36ba5ef7a0e2ad0392130a71029765136cf0 (diff) | |
download | linux-rpi-513a8243d67f8e8d27f2883bd2f18bc87c7ca376.tar.gz linux-rpi-513a8243d67f8e8d27f2883bd2f18bc87c7ca376.tar.bz2 linux-rpi-513a8243d67f8e8d27f2883bd2f18bc87c7ca376.zip |
libceph: mon_get_version request infrastructure
Add support for mon_get_version requests to libceph. This reuses much
of the ceph_mon_generic_request infrastructure, with one exception.
Older OSDs don't set mon_get_version reply hdr->tid even if the
original request had a non-zero tid, which makes it impossible to
lookup ceph_mon_generic_request contexts by tid in get_generic_reply()
for such replies. As a workaround, we allocate a reply message on the
reply path. This can probably interfere with revoke, but I don't see
a better way.
Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
Diffstat (limited to 'net/ceph/debugfs.c')
-rw-r--r-- | net/ceph/debugfs.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/ceph/debugfs.c b/net/ceph/debugfs.c index 8903dcee8d8e..d1a62c69a9f4 100644 --- a/net/ceph/debugfs.c +++ b/net/ceph/debugfs.c @@ -129,6 +129,8 @@ static int monc_show(struct seq_file *s, void *p) seq_printf(s, "%llu statfs\n", req->tid); else if (op == CEPH_MSG_POOLOP) seq_printf(s, "%llu poolop\n", req->tid); + else if (op == CEPH_MSG_MON_GET_VERSION) + seq_printf(s, "%llu mon_get_version", req->tid); else seq_printf(s, "%llu unknown\n", req->tid); } |