diff options
author | Jinshan Xiong <jinshan.xiong@intel.com> | 2016-06-05 23:28:50 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-06-07 22:39:41 -0700 |
commit | ecd4df4a7a3e4e2c58ce39abb0654b2c3cd1a3c6 (patch) | |
tree | ac2fff0fff3a0fb6788f6324625f5438cac02189 /drivers/staging/lustre/lustre/lov/lov_offset.c | |
parent | b788dc51e4255b700f566a5d63a9c5028d631c77 (diff) | |
download | op-kernel-dev-ecd4df4a7a3e4e2c58ce39abb0654b2c3cd1a3c6.zip op-kernel-dev-ecd4df4a7a3e4e2c58ce39abb0654b2c3cd1a3c6.tar.gz |
staging/lustre/lov: calculate file offset correctly
In lov_stripe_pgoff(), it calls lov_stripe_size() to calculate the
file size by ost_size, which will be wrong if the stripe_index
happens to be stripe aligned.
Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-on: http://review.whamcloud.com/14462
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6482
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/lustre/lustre/lov/lov_offset.c')
-rw-r--r-- | drivers/staging/lustre/lustre/lov/lov_offset.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/staging/lustre/lustre/lov/lov_offset.c b/drivers/staging/lustre/lustre/lov/lov_offset.c index 9302f06..7636bfa 100644 --- a/drivers/staging/lustre/lustre/lov/lov_offset.c +++ b/drivers/staging/lustre/lustre/lov/lov_offset.c @@ -74,7 +74,7 @@ pgoff_t lov_stripe_pgoff(struct lov_stripe_md *lsm, pgoff_t stripe_index, { loff_t offset; - offset = lov_stripe_size(lsm, stripe_index << PAGE_SHIFT, stripe); + offset = lov_stripe_size(lsm, (stripe_index << PAGE_SHIFT) + 1, stripe); return offset >> PAGE_SHIFT; } |