summaryrefslogtreecommitdiffstats
path: root/xlators/mount/fuse/src/fuse-bridge.h
diff options
context:
space:
mode:
authorNiels de Vos <ndevos@redhat.com>2012-09-03 12:49:21 +0200
committerAnand Avati <avati@redhat.com>2012-09-06 18:32:26 -0700
commitc13823bd16b26bc471d3efb15f63b76fbfdf0309 (patch)
tree0195ee6b28ba6732bc579b5aa09624f0f2f38042 /xlators/mount/fuse/src/fuse-bridge.h
parentbaddf332d589d29d9bcb18d11dcbb875650e4298 (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.h4
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);