summaryrefslogtreecommitdiffstats
path: root/xlators/protocol/server/src/server.h
diff options
context:
space:
mode:
authorAnuradha Talur <atalur@redhat.com>2016-05-02 00:36:30 +0530
committerNiels de Vos <ndevos@redhat.com>2016-05-01 18:05:31 -0700
commit60e340481ad5496e920722e8267572fa26cf2822 (patch)
tree1530ba672669216ee67c6217443a4c1d30afd592 /xlators/protocol/server/src/server.h
parenta15195794c336ed0e272076a128c56b171cae12f (diff)
protocol/server: Implementation of compound fopv3.9dev
Change-Id: I981258afa527337dd2ad33eecba7fc8084238e6d BUG: 1303829 Signed-off-by: Anuradha Talur <atalur@redhat.com> Reviewed-on: http://review.gluster.org/14137 Smoke: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Niels de Vos <ndevos@redhat.com> NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org> CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
Diffstat (limited to 'xlators/protocol/server/src/server.h')
-rw-r--r--xlators/protocol/server/src/server.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/xlators/protocol/server/src/server.h b/xlators/protocol/server/src/server.h
index 163cf2b9918..fb9cd45db8a 100644
--- a/xlators/protocol/server/src/server.h
+++ b/xlators/protocol/server/src/server.h
@@ -23,6 +23,7 @@
#include "timer.h"
#include "client_t.h"
#include "gidcache.h"
+#include "defaults.h"
#define DEFAULT_BLOCK_SIZE 4194304 /* 4MB */
#define DEFAULT_VOLUME_FILE_PATH CONFDIR "/glusterfs.vol"
@@ -161,6 +162,16 @@ struct _server_state {
mode_t umask;
struct gf_lease lease;
lock_migration_info_t locklist;
+ /* required for compound fops */
+ gfs3_compound_req *req;
+ /* last length till which iovec for compound
+ * writes was processed */
+ int write_length;
+ struct iovec rsp_vector[MAX_IOVEC];
+ int rsp_count;
+ struct iobuf *rsp_iobuf;
+ struct iobref *rsp_iobref;
+ compound_args_t *args;
};
@@ -189,4 +200,13 @@ forget_inode_if_no_dentry (inode_t *inode);
int
unserialize_req_locklist (gfs3_setactivelk_req *req,
lock_migration_info_t *lmi);
+
+int
+serialize_rsp_dirent (gf_dirent_t *entries, gfs3_readdir_rsp *rsp);
+
+int
+serialize_rsp_direntp (gf_dirent_t *entries, gfs3_readdirp_rsp *rsp);
+
+server_ctx_t*
+server_ctx_get (client_t *client, xlator_t *xlator);
#endif /* !_SERVER_H */