diff options
Diffstat (limited to 'xlators/cluster/stripe/src')
| -rw-r--r-- | xlators/cluster/stripe/src/stripe.c | 5 | 
1 files changed, 5 insertions, 0 deletions
diff --git a/xlators/cluster/stripe/src/stripe.c b/xlators/cluster/stripe/src/stripe.c index d47acd6b3ae..d42d88b1202 100644 --- a/xlators/cluster/stripe/src/stripe.c +++ b/xlators/cluster/stripe/src/stripe.c @@ -3555,6 +3555,9 @@ stripe_readv_cbk (call_frame_t *frame, void *cookie, xlator_t *this,                          mlocal->replies[index].stbuf  = *stbuf;                          mlocal->replies[index].count  = count;                          mlocal->replies[index].vector = iov_dup (vector, count); +                        if (local->stbuf_size < stbuf->ia_size) +                                local->stbuf_size = stbuf->ia_size; +                        local->stbuf_blocks += stbuf->ia_blocks;                          if (!mlocal->iobref)                                  mlocal->iobref = iobref_new (); @@ -3612,6 +3615,8 @@ stripe_readv_cbk (call_frame_t *frame, void *cookie, xlator_t *this,                   * cause any bugs at higher levels */                  memcpy (&tmp_stbuf, &mlocal->replies[0].stbuf,                          sizeof (struct iatt)); +                tmp_stbuf.ia_size = local->stbuf_size; +                tmp_stbuf.ia_blocks = local->stbuf_blocks;          done:                  /* */  | 
