summaryrefslogtreecommitdiffstats
path: root/xlators/mount/fuse/src/fuse-bridge.h
diff options
context:
space:
mode:
authorRaghavendra G <raghavendra@gluster.com>2012-08-27 16:59:13 +0530
committerAnand Avati <avati@redhat.com>2012-10-02 14:18:14 -0700
commit3372f198a8272b3467944c759be9975ee8f0aa02 (patch)
treec0295fd787c3c30b3a2442e3375539767a11d59b /xlators/mount/fuse/src/fuse-bridge.h
parent04371377f2f1a842ee3875f9fa415bbc97f20f65 (diff)
fuse: create a new fd during fd-migration.
Migration of fd to new graph involves creation of a new fd to be used only for calls sent in that graph. Earlier approach of using same fd across all graphs, with the associated inode always guaranteed to be the one valid in currently active graph, had issues because of the broken immutability of the association of fd with an inode (for the life of fd). With this patch, there will be a basefd, which the kernel will be aware of. This basefd, contains a mapping of an fd which is valid in currently active graph. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Change-Id: I2b459f05bc2690a66498be107fad6444e3158138 BUG: 802414 Reviewed-on: http://review.gluster.org/3566 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@redhat.com>
Diffstat (limited to 'xlators/mount/fuse/src/fuse-bridge.h')
-rw-r--r--xlators/mount/fuse/src/fuse-bridge.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/xlators/mount/fuse/src/fuse-bridge.h b/xlators/mount/fuse/src/fuse-bridge.h
index c700554f9be..fdfe08b2c2f 100644
--- a/xlators/mount/fuse/src/fuse-bridge.h
+++ b/xlators/mount/fuse/src/fuse-bridge.h
@@ -400,10 +400,10 @@ typedef struct {
int32_t fd_no;
} fuse_state_t;
-typedef struct fuse_fd_ctx {
+typedef struct {
uint32_t open_flags;
char migration_failed;
- fd_t *fd;
+ fd_t *activefd;
} fuse_fd_ctx_t;
typedef void (*fuse_resume_fn_t) (fuse_state_t *state);