Message ID | 1305027117-936-1-git-send-email-xiaoqiangnk@gmail.com |
---|---|
State | Superseded, archived |
Headers | show |
On Tue, 10 May 2011, Yongqiang Yang wrote: The commit subject is really useless, could you be more specific ? and possibly more descriptive in commit description ? Thanks! -Lukas > In case blocksize < pagesize, ext4_ext_fiemap_cb need to ignore > blocks which are not in request range. > > BUG description: > xfstests 225 ended in a endless loop without this patch > when blocksize < pagesize. > > Reported-by: Amir Goldstein <amir73il@users.sf.net> > Signed-off-by: Yongqiang Yang <xiaoqiangnk@gmail.com> > --- > fs/ext4/extents.c | 7 ++++++- > 1 files changed, 6 insertions(+), 1 deletions(-) > > diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c > index e363f21..ec37109 100644 > --- a/fs/ext4/extents.c > +++ b/fs/ext4/extents.c > @@ -3718,9 +3718,14 @@ out: > > bh = head; > do { > + if (end < newex->ec_block) > + /* The buffer is not in > + * the request range. > + */ > + continue; > if (buffer_mapped(bh)) { > /* get the 1st mapped buffer. */ > - if (end > newex->ec_block + > + if (end >= newex->ec_block + > newex->ec_len) > /* The buffer is out of > * the request range. >
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c index e363f21..ec37109 100644 --- a/fs/ext4/extents.c +++ b/fs/ext4/extents.c @@ -3718,9 +3718,14 @@ out: bh = head; do { + if (end < newex->ec_block) + /* The buffer is not in + * the request range. + */ + continue; if (buffer_mapped(bh)) { /* get the 1st mapped buffer. */ - if (end > newex->ec_block + + if (end >= newex->ec_block + newex->ec_len) /* The buffer is out of * the request range.
In case blocksize < pagesize, ext4_ext_fiemap_cb need to ignore blocks which are not in request range. BUG description: xfstests 225 ended in a endless loop without this patch when blocksize < pagesize. Reported-by: Amir Goldstein <amir73il@users.sf.net> Signed-off-by: Yongqiang Yang <xiaoqiangnk@gmail.com> --- fs/ext4/extents.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-)