summaryrefslogtreecommitdiffstats
path: root/xlators/features/cloudsync/src/cloudsync.h
diff options
context:
space:
mode:
authorAnuradha Talur <atalur@commvault.com>2018-11-29 12:54:21 -0800
committerAnuradha Talur <atalur@commvault.com>2019-04-10 10:50:31 -0700
commitd82640511f51a79db6dabea8599c805028fefafb (patch)
tree75b45c9973c0d11d384577a1801c0835967b51a4 /xlators/features/cloudsync/src/cloudsync.h
parent734e6a7e389ea309d5528133ed5bd19064799f13 (diff)
features/cloudsync : Added some new functions
This patch contains the following changes: 1) Store ID info will now be stored in the inode ctx 2) Added new readv type where read is made directly from the remote store. This choice is made by volume set operation. 3) cs_forget() was missing. Added it. Change-Id: Ie3232b3d7ffb5313a03f011b0553b19793eedfa2 fixes: bz#1642168 Signed-off-by: Anuradha Talur <atalur@commvault.com>
Diffstat (limited to 'xlators/features/cloudsync/src/cloudsync.h')
-rw-r--r--xlators/features/cloudsync/src/cloudsync.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/xlators/features/cloudsync/src/cloudsync.h b/xlators/features/cloudsync/src/cloudsync.h
index dbdb207ddea..0cb800a87af 100644
--- a/xlators/features/cloudsync/src/cloudsync.h
+++ b/xlators/features/cloudsync/src/cloudsync.h
@@ -19,6 +19,7 @@
#include "cloudsync-common.h"
#include "cloudsync-autogen-fops.h"
+#define ALIGN_SIZE 4096
#define CS_LOCK_DOMAIN "cs.protect.file.stat"
typedef struct cs_dlstore {
off_t off;
@@ -29,6 +30,7 @@ typedef struct cs_dlstore {
} cs_dlstore;
typedef struct cs_inode_ctx {
+ cs_loc_xattr_t locxattr;
gf_cs_obj_state state;
} cs_inode_ctx_t;
@@ -100,4 +102,22 @@ cs_truncate_cbk(call_frame_t *frame, void *cookie, xlator_t *this,
int32_t
cs_resume_truncate(call_frame_t *frame, xlator_t *this, loc_t *loc,
off_t offset, dict_t *xattr_req);
+
+int32_t
+cs_readv_cbk(call_frame_t *frame, void *cookie, xlator_t *this, int32_t op_ret,
+ int32_t op_errno, struct iovec *vector, int32_t count,
+ struct iatt *stbuf, struct iobref *iobref, dict_t *xdata);
+int32_t
+cs_resume_readv(call_frame_t *frame, xlator_t *this, fd_t *fd, size_t size,
+ off_t offset, uint32_t flags, dict_t *xdata);
+int32_t
+cs_readv(call_frame_t *frame, xlator_t *this, fd_t *fd, size_t size,
+ off_t offset, uint32_t flags, dict_t *xdata);
+
+int
+cs_resume_remote_readv_postprocess(xlator_t *this, call_frame_t *frame,
+ inode_t *inode, off_t offset, size_t size,
+ uint32_t flags);
+int
+cs_serve_readv(call_frame_t *frame, off_t offset, size_t size, uint32_t flags);
#endif /* __CLOUDSYNC_H__ */