summaryrefslogtreecommitdiffstats
path: root/fs/ceph/osd_client.h
diff options
context:
space:
mode:
authorYehuda Sadeh <yehuda@hq.newdream.net>2010-01-13 17:03:23 -0800
committerSage Weil <sage@newdream.net>2010-01-25 12:58:08 -0800
commit0d59ab81c3d3adf466c3fd37d7fb6d46b05d1fd4 (patch)
tree1cdf338188bc323379ced8d5e1bdec31f500768c /fs/ceph/osd_client.h
parent0547a9b30a5ac8680325752b61d3ffa9d4971b6e (diff)
downloadlinux-0d59ab81c3d3adf466c3fd37d7fb6d46b05d1fd4.tar.bz2
ceph: keep reserved replies on the request structure
This includes treating all the data preallocation and revokation at the same place, not having to have a special case for the reserved pages. Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
Diffstat (limited to 'fs/ceph/osd_client.h')
-rw-r--r--fs/ceph/osd_client.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/fs/ceph/osd_client.h b/fs/ceph/osd_client.h
index 4162c6810a8f..8d533d9406ff 100644
--- a/fs/ceph/osd_client.h
+++ b/fs/ceph/osd_client.h
@@ -44,7 +44,7 @@ struct ceph_osd_request {
struct ceph_osd *r_osd;
struct ceph_pg r_pgid;
- struct ceph_connection *r_con_filling_pages;
+ struct ceph_connection *r_con_filling_msg;
struct ceph_msg *r_request, *r_reply;
int r_result;
@@ -75,6 +75,9 @@ struct ceph_osd_request {
struct page **r_pages; /* pages for data payload */
int r_pages_from_pool;
int r_own_pages; /* if true, i own page list */
+
+ struct ceph_msg *replies[2];
+ int cur_reply;
};
struct ceph_osd_client {
@@ -98,8 +101,7 @@ struct ceph_osd_client {
mempool_t *req_mempool;
- struct ceph_msgpool msgpool_op;
- struct ceph_msgpool msgpool_op_reply;
+ struct ceph_msgpool msgpool_op;
};
extern int ceph_osdc_init(struct ceph_osd_client *osdc,