Change clone_metapath to work the same way as release_metapath. (This is merely a clean-up.)
Signed-off-by: Andreas Gruenbacher <[email protected]> --- fs/gfs2/bmap.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c index 03128ed1f34e..a564cf0b7221 100644 --- a/fs/gfs2/bmap.c +++ b/fs/gfs2/bmap.c @@ -294,8 +294,11 @@ static void clone_metapath(struct metapath *clone, struct metapath *mp) unsigned int hgt; *clone = *mp; - for (hgt = 0; hgt < mp->mp_aheight; hgt++) + for (hgt = 0; hgt < GFS2_MAX_META_HEIGHT; hgt++) { + if (mp->mp_bh[hgt] == NULL) + break; get_bh(clone->mp_bh[hgt]); + } } static void gfs2_metapath_ra(struct gfs2_glock *gl, __be64 *start, __be64 *end) -- 2.17.1
