summaryrefslogtreecommitdiffstats
path: root/xlators/features/gfid-access/src/gfid-access.h
diff options
context:
space:
mode:
authorKotresh HR <khiremat@redhat.com>2015-02-10 16:43:50 +0530
committerRaghavendra G <rgowdapp@redhat.com>2015-02-16 07:47:58 -0800
commite04039092d28dde70a9a394010cd04cf0a12726a (patch)
tree6d0b870609c036291fa87f2358b13be8b1bf9f77 /xlators/features/gfid-access/src/gfid-access.h
parent8618abaaf07a96c0384db9bd1e7dbbe663f4f24c (diff)
feature/gfid-access: Send a named lookup before trying to create a file.
Normally a named-lookup is done by the kernel on an entry before it issues a dentry creation fop like create/mknod etc. This will enable cluster translators like dht to maintain internal consistency like deleting a linkto file if no corresponding datafile is present etc. While handling file creation on auxiliary gfid mounts, we issue dentry creation fop without issuing a lookup. If there are stale-linkto files, creation would fail with EEXIST, however access would fail since there is no datafile. A named lookup would cleanup the linkto file allowing create to succeed. Change-Id: I2932107296adac710dd179df7d0946b8697a497a BUG: 1191413 Signed-off-by: Kotresh HR <khiremat@redhat.com> Reviewed-on: http://review.gluster.org/9634 Reviewed-by: Raghavendra G <rgowdapp@redhat.com> Tested-by: Raghavendra G <rgowdapp@redhat.com>
Diffstat (limited to 'xlators/features/gfid-access/src/gfid-access.h')
-rw-r--r--xlators/features/gfid-access/src/gfid-access.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/xlators/features/gfid-access/src/gfid-access.h b/xlators/features/gfid-access/src/gfid-access.h
index 5c7a95af4c8..2449c5f6835 100644
--- a/xlators/features/gfid-access/src/gfid-access.h
+++ b/xlators/features/gfid-access/src/gfid-access.h
@@ -101,7 +101,11 @@ struct __ga_local {
call_frame_t *orig_frame;
unsigned int uid;
unsigned int gid;
- loc_t loc;
+ loc_t loc;
+ mode_t mode;
+ dev_t rdev;
+ mode_t umask;
+ dict_t *xdata;
};
typedef struct __ga_local ga_local_t;