summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libglusterfs/src/default-args.c4
-rw-r--r--libglusterfs/src/glusterfs.h1
-rw-r--r--libglusterfs/src/syncop.c2
-rw-r--r--rpc/xdr/src/glusterfs3-xdr.x1
-rw-r--r--xlators/features/locks/src/posix.c4
-rw-r--r--xlators/protocol/client/src/client-helpers.c4
-rw-r--r--xlators/protocol/server/src/server-helpers.c4
7 files changed, 20 insertions, 0 deletions
diff --git a/libglusterfs/src/default-args.c b/libglusterfs/src/default-args.c
index 9f788011ecb..2e51bf21f84 100644
--- a/libglusterfs/src/default-args.c
+++ b/libglusterfs/src/default-args.c
@@ -1454,6 +1454,8 @@ args_getactivelk_cbk_store (default_args_cbk_t *args,
INIT_LIST_HEAD (&stub_entry->list);
stub_entry->flock = entry->flock;
+ stub_entry->lk_flags = entry->lk_flags;
+
stub_entry->client_uid = gf_strdup (entry->client_uid);
if (!stub_entry->client_uid) {
GF_FREE (stub_entry);
@@ -1490,6 +1492,8 @@ args_setactivelk_store (default_args_t *args, loc_t *loc,
INIT_LIST_HEAD (&stub_entry->list);
stub_entry->flock = entry->flock;
+ stub_entry->lk_flags = entry->lk_flags;
+
stub_entry->client_uid = gf_strdup (entry->client_uid);
if (!stub_entry->client_uid) {
GF_FREE (stub_entry);
diff --git a/libglusterfs/src/glusterfs.h b/libglusterfs/src/glusterfs.h
index 28d894fb8e1..e8a7b237690 100644
--- a/libglusterfs/src/glusterfs.h
+++ b/libglusterfs/src/glusterfs.h
@@ -509,6 +509,7 @@ typedef struct lock_migration_info {
struct list_head list;
struct gf_flock flock;
char *client_uid;
+ uint32_t lk_flags;
} lock_migration_info_t;
#define GF_MUST_CHECK __attribute__((warn_unused_result))
diff --git a/libglusterfs/src/syncop.c b/libglusterfs/src/syncop.c
index e3d48577d2c..00a9b576269 100644
--- a/libglusterfs/src/syncop.c
+++ b/libglusterfs/src/syncop.c
@@ -3101,6 +3101,8 @@ syncop_getactivelk_cbk (call_frame_t *frame,
entry->flock = tmp->flock;
+ entry->lk_flags = tmp->lk_flags;
+
entry->client_uid = gf_strdup (tmp->client_uid);
list_add_tail (&entry->list, &args->locklist.list);
diff --git a/rpc/xdr/src/glusterfs3-xdr.x b/rpc/xdr/src/glusterfs3-xdr.x
index dcd10cb23b7..eefad57ce80 100644
--- a/rpc/xdr/src/glusterfs3-xdr.x
+++ b/rpc/xdr/src/glusterfs3-xdr.x
@@ -966,6 +966,7 @@ struct gfs3_compound_rsp {
struct gfs3_locklist {
struct gf_proto_flock flock;
string client_uid<>;
+ unsigned int lk_flags;
struct gfs3_locklist *nextentry;
};
diff --git a/xlators/features/locks/src/posix.c b/xlators/features/locks/src/posix.c
index ed07dd4b1a4..f53af6345df 100644
--- a/xlators/features/locks/src/posix.c
+++ b/xlators/features/locks/src/posix.c
@@ -2708,6 +2708,8 @@ gf_mig_info_for_lock (posix_lock_t *lock)
posix_lock_to_flock (lock, &new->flock);
+ new->lk_flags = lock->lk_flags;
+
new->client_uid = gf_strdup (lock->client_uid);
out:
@@ -3385,6 +3387,8 @@ gf_lkmig_info_to_posix_lock (call_frame_t *frame,
lock->client = frame->root->client;
+ lock->lk_flags = lmi->lk_flags;
+
lock->client_uid = gf_strdup (lmi->client_uid);
if (lock->client_uid == NULL) {
GF_FREE (lock);
diff --git a/xlators/protocol/client/src/client-helpers.c b/xlators/protocol/client/src/client-helpers.c
index 351a10be6e6..4bdb364a9a3 100644
--- a/xlators/protocol/client/src/client-helpers.c
+++ b/xlators/protocol/client/src/client-helpers.c
@@ -1795,6 +1795,8 @@ clnt_unserialize_rsp_locklist (xlator_t *this, struct gfs3_getactivelk_rsp *rsp,
gf_proto_flock_to_flock (&trav->flock, &temp->flock);
+ temp->lk_flags = trav->lk_flags;
+
temp->client_uid = gf_strdup (trav->client_uid);
list_add_tail (&temp->list, &lmi->list);
@@ -1861,6 +1863,8 @@ serialize_req_locklist (lock_migration_info_t *locklist,
gf_proto_flock_from_flock (&trav->flock, &tmp->flock);
+ trav->lk_flags = tmp->lk_flags;
+
trav->client_uid = gf_strdup (tmp->client_uid);
if (!trav->client_uid) {
gf_msg (THIS->name, GF_LOG_ERROR, 0, 0,
diff --git a/xlators/protocol/server/src/server-helpers.c b/xlators/protocol/server/src/server-helpers.c
index 09183e8a1dd..39fbcbc6763 100644
--- a/xlators/protocol/server/src/server-helpers.c
+++ b/xlators/protocol/server/src/server-helpers.c
@@ -1025,6 +1025,8 @@ serialize_rsp_locklist (lock_migration_info_t *locklist,
gf_proto_flock_from_flock (&trav->flock, &tmp->flock);
+ trav->lk_flags = tmp->lk_flags;
+
trav->client_uid = tmp->client_uid;
if (prev)
@@ -1337,6 +1339,8 @@ unserialize_req_locklist (gfs3_setactivelk_req *req,
gf_proto_flock_to_flock (&trav->flock, &temp->flock);
+ temp->lk_flags = trav->lk_flags;
+
temp->client_uid = gf_strdup (trav->client_uid);
list_add_tail (&temp->list, &lmi->list);