summaryrefslogtreecommitdiffstats
path: root/xlators/cluster/afr/src/afr-self-heal.h
diff options
context:
space:
mode:
authorKrutika Dhananjay <kdhananj@redhat.com>2014-08-21 17:27:17 +0530
committerVijay Bellur <vbellur@redhat.com>2014-09-16 04:26:40 -0700
commitdfaf76cffe37183c1b8072961b085f705c1c978f (patch)
tree82826604c29d3a8328486858378427a6ab0727e1 /xlators/cluster/afr/src/afr-self-heal.h
parentcd5a5d32996d2f1141adac94816ad2292a693ebf (diff)
cluster/afr: Propagate EIO on inode's type mismatch
Backport of: http://review.gluster.org/8574, and http://review.gluster.org/8586 Original author of the test script: Pranith Kumar K <pkarampu@redhat.com> Change-Id: I0c32bdd8e666f8175c0a8fbf940934e6ce469931 BUG: 1136830 Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com> Reviewed-on: http://review.gluster.org/8706 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com> Reviewed-by: Vijay Bellur <vbellur@redhat.com>
Diffstat (limited to 'xlators/cluster/afr/src/afr-self-heal.h')
-rw-r--r--xlators/cluster/afr/src/afr-self-heal.h20
1 files changed, 14 insertions, 6 deletions
diff --git a/xlators/cluster/afr/src/afr-self-heal.h b/xlators/cluster/afr/src/afr-self-heal.h
index da0025bb600..84da0d8000f 100644
--- a/xlators/cluster/afr/src/afr-self-heal.h
+++ b/xlators/cluster/afr/src/afr-self-heal.h
@@ -132,11 +132,10 @@ afr_selfheal_unlocked_discover (call_frame_t *frame, inode_t *inode,
inode_t *
afr_selfheal_unlocked_lookup_on (call_frame_t *frame, inode_t *parent,
const char *name, struct afr_reply *replies,
- unsigned char *lookup_on);
+ unsigned char *lookup_on, dict_t *xattr);
int
-afr_selfheal_find_direction (call_frame_t *frame, xlator_t *this,
- struct afr_reply *replies,
+afr_selfheal_find_direction (xlator_t *this, struct afr_reply *replies,
afr_transaction_type type, unsigned char *locked_on,
unsigned char *sources, unsigned char *sinks);
@@ -151,9 +150,9 @@ afr_selfheal_undo_pending (call_frame_t *frame, xlator_t *this, inode_t *inode,
struct afr_reply *replies, unsigned char *locked_on);
int
-afr_selfheal_recreate_entry (call_frame_t *frame, xlator_t *this, int dst,
- int source, inode_t *dir, const char *name,
- inode_t *inode, struct afr_reply *replies);
+afr_selfheal_recreate_entry (xlator_t *this, int dst, int source, inode_t *dir,
+ const char *name, inode_t *inode,
+ struct afr_reply *replies);
int
afr_selfheal_post_op (call_frame_t *frame, xlator_t *this, inode_t *inode,
@@ -165,4 +164,13 @@ afr_frame_create (xlator_t *this);
inode_t *
afr_inode_find (xlator_t *this, uuid_t gfid);
+int
+afr_selfheal_discover_cbk (call_frame_t *frame, void *cookie, xlator_t *this,
+ int op_ret, int op_errno, inode_t *inode,
+ struct iatt *buf, dict_t *xdata,
+ struct iatt *parbuf);
+
+void
+afr_replies_copy (struct afr_reply *dst, struct afr_reply *src, int count);
+
#endif /* !_AFR_SELFHEAL_H */