diff options
author | Niels de Vos <ndevos@redhat.com> | 2012-09-03 12:49:21 +0200 |
---|---|---|
committer | Anand Avati <avati@redhat.com> | 2012-09-06 18:32:26 -0700 |
commit | c13823bd16b26bc471d3efb15f63b76fbfdf0309 (patch) | |
tree | 0195ee6b28ba6732bc579b5aa09624f0f2f38042 /xlators/mount/fuse/src/fuse-bridge.h | |
parent | baddf332d589d29d9bcb18d11dcbb875650e4298 (diff) |
mount/fuse: add mount-option "enable-ino32" for the native client
By default the GlusterFS-native client uses 64-bit inodes. Some 32-bit
applications can not handle these correctly. Introduce a client-side
mount option "enable-ino32" which causes the FUSE-client to squash the
64-bit inodes into a 32-bit value.
Change-Id: I3296d16528bfb50457b9675f6b8701234ed82ff0
BUG: 850352
Signed-off-by: Niels de Vos <ndevos@redhat.com>
Reviewed-on: http://review.gluster.org/3885
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.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/xlators/mount/fuse/src/fuse-bridge.h b/xlators/mount/fuse/src/fuse-bridge.h index 63ec5d2ef..3f45f0644 100644 --- a/xlators/mount/fuse/src/fuse-bridge.h +++ b/xlators/mount/fuse/src/fuse-bridge.h @@ -104,6 +104,7 @@ struct fuse_private { gf_boolean_t read_only; gf_boolean_t fopen_keep_cache; int32_t gid_cache_timeout; + gf_boolean_t enable_ino32; fdtable_t *fdtable; gid_cache_t gid_cache; @@ -413,7 +414,8 @@ fuse_loc_fill (loc_t *loc, fuse_state_t *state, ino_t ino, call_frame_t *get_call_frame_for_req (fuse_state_t *state); fuse_state_t *get_fuse_state (xlator_t *this, fuse_in_header_t *finh); void free_fuse_state (fuse_state_t *state); -void gf_fuse_stat2attr (struct iatt *st, struct fuse_attr *fa); +void gf_fuse_stat2attr (struct iatt *st, struct fuse_attr *fa, + gf_boolean_t enable_ino32); uint64_t inode_to_fuse_nodeid (inode_t *inode); xlator_t *fuse_active_subvol (xlator_t *fuse); inode_t *fuse_ino_to_inode (uint64_t ino, xlator_t *fuse); |