summaryrefslogtreecommitdiffstats
path: root/xlators/cluster/dht/src/dht-common.h
diff options
context:
space:
mode:
Diffstat (limited to 'xlators/cluster/dht/src/dht-common.h')
-rw-r--r--xlators/cluster/dht/src/dht-common.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/xlators/cluster/dht/src/dht-common.h b/xlators/cluster/dht/src/dht-common.h
index 1b5a0846c63..b1d12c84a9f 100644
--- a/xlators/cluster/dht/src/dht-common.h
+++ b/xlators/cluster/dht/src/dht-common.h
@@ -42,7 +42,7 @@ typedef int (*dht_selfheal_dir_cbk_t) (call_frame_t *frame, void *cookie,
int32_t op_ret, int32_t op_errno,
dict_t *xdata);
typedef int (*dht_defrag_cbk_fn_t) (xlator_t *this, xlator_t *dst_node,
- call_frame_t *frame);
+ call_frame_t *frame, int ret);
typedef int (*dht_refresh_layout_unlock) (call_frame_t *frame, xlator_t *this,
int op_ret);
@@ -121,8 +121,12 @@ struct dht_rebalance_ {
struct iobref *iobref;
struct iovec *vector;
struct iatt stbuf;
+ struct iatt prebuf;
+ struct iatt postbuf;
dht_defrag_cbk_fn_t target_op_fn;
dict_t *xdata;
+ dict_t *xattr;
+ int32_t set;
};
/**
@@ -553,6 +557,8 @@ typedef struct dht_migrate_info {
#define layout_is_sane(layout) ((layout) && (layout->cnt > 0))
+#define we_are_not_migrating(x) ((x) == 1)
+
#define DHT_STACK_UNWIND(fop, frame, params ...) do { \
dht_local_t *__local = NULL; \
xlator_t *__xl = NULL; \
@@ -1083,4 +1089,9 @@ int
dht_build_parent_loc (xlator_t *this, loc_t *parent, loc_t *child,
int32_t *op_errno);
+int32_t dht_set_local_rebalance (xlator_t *this, dht_local_t *local,
+ struct iatt *stbuf,
+ struct iatt *prebuf,
+ struct iatt *postbuf, dict_t *xdata);
+
#endif/* _DHT_H */