diff options
Diffstat (limited to 'xlators/cluster/dht/src/switch.c')
| -rw-r--r-- | xlators/cluster/dht/src/switch.c | 34 | 
1 files changed, 18 insertions, 16 deletions
diff --git a/xlators/cluster/dht/src/switch.c b/xlators/cluster/dht/src/switch.c index 1451e011e61..e129bf01b46 100644 --- a/xlators/cluster/dht/src/switch.c +++ b/xlators/cluster/dht/src/switch.c @@ -366,7 +366,8 @@ switch_lookup (call_frame_t *frame, xlator_t *this,  err:          op_errno = (op_errno == -1) ? errno : op_errno; -        DHT_STACK_UNWIND (lookup, frame, -1, op_errno, NULL, NULL, NULL, NULL); +        DHT_STACK_UNWIND (lookup, frame, -1, op_errno, +                          NULL, NULL, NULL, NULL);          return 0;  } @@ -375,7 +376,7 @@ switch_create_linkfile_create_cbk (call_frame_t *frame, void *cookie,                                     xlator_t *this, int op_ret, int op_errno,                                     inode_t *inode, struct iatt *stbuf,                                     struct iatt *preparent, -                                   struct iatt *postparent) +                                   struct iatt *postparent, dict_t *xdata)  {          dht_local_t  *local = NULL; @@ -386,21 +387,21 @@ switch_create_linkfile_create_cbk (call_frame_t *frame, void *cookie,          STACK_WIND (frame, dht_create_cbk,                      local->cached_subvol, local->cached_subvol->fops->create, -                    &local->loc, local->flags, local->mode, local->fd, -                    local->params); +                    &local->loc, local->flags, local->mode, local->umask, +                    local->fd, local->params);          return 0;  err:          DHT_STACK_UNWIND (create, frame, -1, op_errno, -                          NULL, NULL, NULL, NULL, NULL); +                          NULL, NULL, NULL, NULL, NULL, NULL);          return 0;  }  int  switch_create (call_frame_t *frame, xlator_t *this,                 loc_t *loc, int32_t flags, mode_t mode, -               fd_t *fd, dict_t *params) +               mode_t umask, fd_t *fd, dict_t *params)  {          dht_local_t *local = NULL;          dht_conf_t  *conf  = NULL; @@ -441,7 +442,7 @@ switch_create (call_frame_t *frame, xlator_t *this,                  /* create a link file instead of actual file */                  local->mode = mode;                  local->flags = flags; - +                local->umask = umask;                  local->cached_subvol = avail_subvol;                  dht_linkfile_create (frame,                                       switch_create_linkfile_create_cbk, @@ -454,14 +455,14 @@ switch_create (call_frame_t *frame, xlator_t *this,          STACK_WIND (frame, dht_create_cbk,                      subvol, subvol->fops->create, -                    loc, flags, mode, fd, params); +                    loc, flags, mode, umask, fd, params);          return 0;  err:          op_errno = (op_errno == -1) ? errno : op_errno;          DHT_STACK_UNWIND (create, frame, -1, op_errno, -                          NULL, NULL, NULL, NULL, NULL); +                          NULL, NULL, NULL, NULL, NULL, NULL);          return 0;  } @@ -470,7 +471,7 @@ int  switch_mknod_linkfile_cbk (call_frame_t *frame, void *cookie, xlator_t *this,                             int op_ret, int op_errno, inode_t *inode,                             struct iatt *stbuf, struct iatt *preparent, -                           struct iatt *postparent) +                           struct iatt *postparent, dict_t *xdata)  {          dht_local_t  *local = NULL; @@ -481,20 +482,20 @@ switch_mknod_linkfile_cbk (call_frame_t *frame, void *cookie, xlator_t *this,                              local->cached_subvol,                              local->cached_subvol->fops->mknod,                              &local->loc, local->mode, local->rdev, -                            local->params); +                            local->umask, local->params);                  return 0;          }          DHT_STACK_UNWIND (link, frame, op_ret, op_errno, -                          inode, stbuf, preparent, postparent); +                          inode, stbuf, preparent, postparent, xdata);          return 0;  }  int -switch_mknod (call_frame_t *frame, xlator_t *this, -              loc_t *loc, mode_t mode, dev_t rdev, dict_t *params) +switch_mknod (call_frame_t *frame, xlator_t *this, loc_t *loc, mode_t mode, +              dev_t rdev, mode_t umask, dict_t *params)  {          dht_local_t *local = NULL;          dht_conf_t  *conf  = NULL; @@ -537,6 +538,7 @@ switch_mknod (call_frame_t *frame, xlator_t *this,                  local->params = dict_ref (params);                  local->mode = mode; +                local->umask = umask;                  local->rdev = rdev;                  local->cached_subvol = avail_subvol; @@ -550,14 +552,14 @@ switch_mknod (call_frame_t *frame, xlator_t *this,          STACK_WIND (frame, dht_newfile_cbk,                      subvol, subvol->fops->mknod, -                    loc, mode, rdev, params); +                    loc, mode, rdev, umask, params);          return 0;  err:          op_errno = (op_errno == -1) ? errno : op_errno;          DHT_STACK_UNWIND (mknod, frame, -1, op_errno, -                          NULL, NULL, NULL, NULL); +                          NULL, NULL, NULL, NULL, NULL);          return 0;  }  | 
