From b34235bfee175be1dcaad8056239e69f76ae3e95 Mon Sep 17 00:00:00 2001 From: Rajesh Amaravathi Date: Thu, 15 Nov 2012 12:04:34 +0530 Subject: protocol/client: Remember the gfid of opened fd This is needed when the fresh lookup triggers self-heal, gfid won't be present in inode yet. Similar situation happens with Rebalance as it does not perform inode_link. Added similar fix for re-opendir. Removed inode from fdctx and removed some duplication of code. BUG: 826080 Change-Id: I5840b86bf70ef73d40ae899b34a210b2dbcbf91f Signed-off-by: Pranith Kumar K Signed-off-by: Rajesh Amaravathi Reviewed-on: http://review.gluster.org/4192 Tested-by: Gluster Build System Reviewed-by: Vijay Bellur --- xlators/protocol/client/src/client.h | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'xlators/protocol/client/src/client.h') diff --git a/xlators/protocol/client/src/client.h b/xlators/protocol/client/src/client.h index 64066dd0add..ac999db5a16 100644 --- a/xlators/protocol/client/src/client.h +++ b/xlators/protocol/client/src/client.h @@ -116,9 +116,6 @@ typedef struct _client_fd_ctx { fd's position in the saved_fds list. */ int64_t remote_fd; - inode_t *inode; - uint64_t ino; - uint64_t gen; char is_dir; char released; int32_t flags; @@ -126,6 +123,7 @@ typedef struct _client_fd_ctx { fd_lk_ctx_t *lk_ctx; pthread_mutex_t mutex; lk_heal_state_t lk_heal_state; + uuid_t gfid; struct list_head lock_list; /* List of all granted locks on this fd */ } clnt_fd_ctx_t; -- cgit