diff options
Diffstat (limited to 'xlators/cluster/afr/src')
| -rw-r--r-- | xlators/cluster/afr/src/afr-inode-read.c | 8 | ||||
| -rw-r--r-- | xlators/cluster/afr/src/afr-inode-read.h | 2 | ||||
| -rw-r--r-- | xlators/cluster/afr/src/afr-inode-write.c | 4 | ||||
| -rw-r--r-- | xlators/cluster/afr/src/afr-inode-write.h | 4 | ||||
| -rw-r--r-- | xlators/cluster/afr/src/afr-self-heal-algorithm.c | 4 | ||||
| -rw-r--r-- | xlators/cluster/afr/src/afr.h | 2 | ||||
| -rw-r--r-- | xlators/cluster/afr/src/pump.c | 6 | 
7 files changed, 18 insertions, 12 deletions
diff --git a/xlators/cluster/afr/src/afr-inode-read.c b/xlators/cluster/afr/src/afr-inode-read.c index 5b534cf3742..0ef0f4f8642 100644 --- a/xlators/cluster/afr/src/afr-inode-read.c +++ b/xlators/cluster/afr/src/afr-inode-read.c @@ -1083,7 +1083,8 @@ afr_readv_cbk (call_frame_t *frame, void *cookie,                                     children[next_call_child],                                     children[next_call_child]->fops->readv,                                     local->fd, local->cont.readv.size, -                                   local->cont.readv.offset); +                                   local->cont.readv.offset, +                                   local->cont.readv.flags);          }  out: @@ -1098,7 +1099,7 @@ out:  int32_t  afr_readv (call_frame_t *frame, xlator_t *this, -           fd_t *fd, size_t size, off_t offset) +           fd_t *fd, size_t size, off_t offset, uint32_t flags)  {          afr_private_t * priv       = NULL;          afr_local_t   * local      = NULL; @@ -1143,6 +1144,7 @@ afr_readv (call_frame_t *frame, xlator_t *this,          local->cont.readv.size       = size;          local->cont.readv.offset     = offset; +        local->cont.readv.flags      = flags;          ret = afr_open_fd_fix (frame, this, _gf_false);          if (ret) { @@ -1153,7 +1155,7 @@ afr_readv (call_frame_t *frame, xlator_t *this,                             (void *) (long) call_child,                             children[call_child],                             children[call_child]->fops->readv, -                           fd, size, offset); +                           fd, size, offset, flags);          ret = 0;  out: diff --git a/xlators/cluster/afr/src/afr-inode-read.h b/xlators/cluster/afr/src/afr-inode-read.h index 8af3ed1b503..5ec7411b11d 100644 --- a/xlators/cluster/afr/src/afr-inode-read.h +++ b/xlators/cluster/afr/src/afr-inode-read.h @@ -38,7 +38,7 @@ afr_readlink (call_frame_t *frame, xlator_t *this,  int32_t  afr_readv (call_frame_t *frame, xlator_t *this, -	   fd_t *fd, size_t size, off_t offset); +	   fd_t *fd, size_t size, off_t offset, uint32_t flags);  int32_t  afr_getxattr (call_frame_t *frame, xlator_t *this, diff --git a/xlators/cluster/afr/src/afr-inode-write.c b/xlators/cluster/afr/src/afr-inode-write.c index 2a7e0e736a5..72dcdc4785b 100644 --- a/xlators/cluster/afr/src/afr-inode-write.c +++ b/xlators/cluster/afr/src/afr-inode-write.c @@ -157,6 +157,7 @@ afr_writev_wind (call_frame_t *frame, xlator_t *this)                                             local->cont.writev.vector,                                             local->cont.writev.count,                                             local->cont.writev.offset, +                                           local->cont.writev.flags,                                             local->cont.writev.iobref);                          if (!--call_count) @@ -441,7 +442,7 @@ out:  int  afr_writev (call_frame_t *frame, xlator_t *this, fd_t *fd,              struct iovec *vector, int32_t count, off_t offset, -            struct iobref *iobref) +            uint32_t flags, struct iobref *iobref)  {          afr_private_t * priv  = NULL;          afr_local_t   * local = NULL; @@ -466,6 +467,7 @@ afr_writev (call_frame_t *frame, xlator_t *this, fd_t *fd,          local->cont.writev.vector     = iov_dup (vector, count);          local->cont.writev.count      = count;          local->cont.writev.offset     = offset; +        local->cont.writev.flags      = flags;          local->cont.writev.iobref     = iobref_ref (iobref);          local->fd                = fd_ref (fd); diff --git a/xlators/cluster/afr/src/afr-inode-write.h b/xlators/cluster/afr/src/afr-inode-write.h index bdd0b48669d..729a490d562 100644 --- a/xlators/cluster/afr/src/afr-inode-write.h +++ b/xlators/cluster/afr/src/afr-inode-write.h @@ -37,9 +37,9 @@ afr_fchmod (call_frame_t *frame, xlator_t *this,  	    fd_t *fd, mode_t mode);  int32_t -afr_writev (call_frame_t *frame, xlator_t *this, fd_t *fd,  +afr_writev (call_frame_t *frame, xlator_t *this, fd_t *fd,  	    struct iovec *vector, int32_t count, off_t offset, -            struct iobref *iobref); +            uint32_t flags, struct iobref *iobref);  int32_t  afr_truncate (call_frame_t *frame, xlator_t *this, diff --git a/xlators/cluster/afr/src/afr-self-heal-algorithm.c b/xlators/cluster/afr/src/afr-self-heal-algorithm.c index cb1516d8473..629822a8e60 100644 --- a/xlators/cluster/afr/src/afr-self-heal-algorithm.c +++ b/xlators/cluster/afr/src/afr-self-heal-algorithm.c @@ -519,7 +519,7 @@ sh_loop_read_cbk (call_frame_t *loop_frame, void *cookie,                                     priv->children[i],                                     priv->children[i]->fops->writev,                                     loop_sh->healing_fd, vector, count, -                                   loop_sh->offset, iobref); +                                   loop_sh->offset, 0, iobref);                  if (!--call_count)                          break; @@ -546,7 +546,7 @@ sh_loop_read (call_frame_t *loop_frame, xlator_t *this)                             priv->children[loop_sh->source],                             priv->children[loop_sh->source]->fops->readv,                             loop_sh->healing_fd, loop_sh->block_size, -                           loop_sh->offset); +                           loop_sh->offset, 0);          return 0;  } diff --git a/xlators/cluster/afr/src/afr.h b/xlators/cluster/afr/src/afr.h index 0c4bf5f6385..003d666e00d 100644 --- a/xlators/cluster/afr/src/afr.h +++ b/xlators/cluster/afr/src/afr.h @@ -475,6 +475,7 @@ typedef struct _afr_local {                          size_t size;                          off_t offset;                          int last_index; +                        uint32_t flags;                  } readv;                  /* dir read */ @@ -508,6 +509,7 @@ typedef struct _afr_local {                          struct iobref *iobref;                          int32_t count;                          off_t offset; +                        uint32_t flags;                  } writev;                  struct { diff --git a/xlators/cluster/afr/src/pump.c b/xlators/cluster/afr/src/pump.c index 8ef30edbaf4..df0b31166ef 100644 --- a/xlators/cluster/afr/src/pump.c +++ b/xlators/cluster/afr/src/pump.c @@ -1987,7 +1987,7 @@ pump_writev (call_frame_t *frame,               fd_t *fd,               struct iovec *vector,               int32_t count, -             off_t off, +             off_t off, uint32_t flags,               struct iobref *iobref)  {          afr_private_t *priv  = NULL; @@ -2000,11 +2000,11 @@ pump_writev (call_frame_t *frame,                              fd,                              vector,                              count, -                            off, +                            off, flags,                              iobref);                  return 0;          } -        afr_writev (frame, this, fd, vector, count, off, iobref); +        afr_writev (frame, this, fd, vector, count, off, flags, iobref);          return 0;  }  | 
