diff options
| author | Csaba Henk <csaba@gluster.com> | 2009-11-16 02:59:04 +0000 | 
|---|---|---|
| committer | Anand V. Avati <avati@dev.gluster.com> | 2009-11-16 02:17:41 -0800 | 
| commit | 4b233c6341134d11b170fa4cdbafc49246b46975 (patch) | |
| tree | 9624fba33fa89a00f93649d721dedb589cb5d039 /xlators | |
| parent | 0c7597a1339f1a6762505cfe7292202a0db196a6 (diff) | |
Upgrade FUSE protocol to rev. 7.13
2.6.32 will feature FUSE proto 7.13 which lets us tune the maximal number of
in-kernel backgrounded requests via INIT.
Hereby we live up to this enhancement.
Signed-off-by: Csaba Henk <csaba@gluster.com>
Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
BUG: 385 (Upgrade FUSE protocol to rev. 7.13)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=385
Diffstat (limited to 'xlators')
| -rw-r--r-- | xlators/mount/fuse/src/fuse-bridge.c | 12 | 
1 files changed, 9 insertions, 3 deletions
diff --git a/xlators/mount/fuse/src/fuse-bridge.c b/xlators/mount/fuse/src/fuse-bridge.c index 714ca995d5b..a17c8e53c3a 100644 --- a/xlators/mount/fuse/src/fuse-bridge.c +++ b/xlators/mount/fuse/src/fuse-bridge.c @@ -62,7 +62,7 @@  #define ZR_DIRECT_IO_OPT        "direct-io-mode"  #define ZR_STRICT_VOLFILE_CHECK "strict-volfile-check" -#define FUSE_712_OP_HIGH (FUSE_POLL + 1) +#define FUSE_713_OP_HIGH (FUSE_POLL + 1)  #define GLUSTERFS_XATTR_LEN_MAX  65536  #define MAX_FUSE_PROC_DELAY 1 @@ -2914,6 +2914,12 @@ fuse_init (xlator_t *this, fuse_in_header_t *finh, void *msg)                  priv->direct_io_mode = 0;                  fino.flags |= FUSE_BIG_WRITES;          } +        if (fini->minor >= 13) { +                /* these values seemed to work fine during testing */ + +                fino.max_background = 64; +                fino.congestion_threshold = 48; +        }          if (fini->minor < 9)                  *priv->msg0_len_p = sizeof(*finh) + FUSE_COMPAT_WRITE_IN_SIZE; @@ -2951,7 +2957,7 @@ fuse_discard (xlator_t *this, fuse_in_header_t *finh, void *msg)          FREE (finh);  } -static fuse_handler_t *fuse_ops[FUSE_712_OP_HIGH]; +static fuse_handler_t *fuse_ops[FUSE_713_OP_HIGH];  int  fuse_first_lookup_cbk (call_frame_t *frame, void *cookie, xlator_t *this, @@ -3443,7 +3449,7 @@ init (xlator_t *this_xl)          pthread_mutex_init (&priv->child_up_mutex, NULL);          priv->child_up_value = 1; -        for (i = 0; i < FUSE_712_OP_HIGH; i++) +        for (i = 0; i < FUSE_713_OP_HIGH; i++)                  fuse_ops[i] = fuse_enosys;          fuse_ops[FUSE_INIT]        = fuse_init;          fuse_ops[FUSE_DESTROY]     = fuse_discard;  | 
