summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSage Weil <sage@newdream.net>2010-01-08 15:58:25 -0800
committerSage Weil <sage@newdream.net>2010-01-14 12:23:39 -0800
commit7740a42f816790583bd8a9079337772d511af3a3 (patch)
treefffc12ba1ab1e60da8c13dba7fef5d0024278ca5
parent103e2d3ae57d38d18aaac1b327266c1407499ac1 (diff)
ceph: display pgid in debugfs osd request dump
Signed-off-by: Sage Weil <sage@newdream.net>
-rw-r--r--fs/ceph/debugfs.c6
-rw-r--r--fs/ceph/osd_client.c2
-rw-r--r--fs/ceph/osd_client.h1
3 files changed, 7 insertions, 2 deletions
diff --git a/fs/ceph/debugfs.c b/fs/ceph/debugfs.c
index 22d3b47fb1b..fba44b2a608 100644
--- a/fs/ceph/debugfs.c
+++ b/fs/ceph/debugfs.c
@@ -231,8 +231,10 @@ static int osdc_show(struct seq_file *s, void *pp)
req = rb_entry(p, struct ceph_osd_request, r_node);
- seq_printf(s, "%lld\tosd%d\t", req->r_tid,
- req->r_osd ? req->r_osd->o_osd : -1);
+ seq_printf(s, "%lld\tosd%d\t%d.%x\t", req->r_tid,
+ req->r_osd ? req->r_osd->o_osd : -1,
+ le32_to_cpu(req->r_pgid.pool),
+ le16_to_cpu(req->r_pgid.ps));
head = req->r_request->front.iov_base;
op = (void *)(head + 1);
diff --git a/fs/ceph/osd_client.c b/fs/ceph/osd_client.c
index 80b868f7a0f..8417e21a3cb 100644
--- a/fs/ceph/osd_client.c
+++ b/fs/ceph/osd_client.c
@@ -538,6 +538,8 @@ static int __map_osds(struct ceph_osd_client *osdc,
if (err)
return err;
pgid = reqhead->layout.ol_pgid;
+ req->r_pgid = pgid;
+
o = ceph_calc_pg_primary(osdc->osdmap, pgid);
if ((req->r_osd && req->r_osd->o_osd == o &&
diff --git a/fs/ceph/osd_client.h b/fs/ceph/osd_client.h
index 8fef71cc445..4162c6810a8 100644
--- a/fs/ceph/osd_client.h
+++ b/fs/ceph/osd_client.h
@@ -42,6 +42,7 @@ struct ceph_osd_request {
struct rb_node r_node;
struct list_head r_osd_item;
struct ceph_osd *r_osd;
+ struct ceph_pg r_pgid;
struct ceph_connection *r_con_filling_pages;