diff --git a/[refs] b/[refs] index 3aeba5cc52da..6c2ee8cc1c95 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 85a258b70d4891a443583530f48ab734a31e2d8d +refs/heads/master: 7f4804d4c8b78ca223cee50e22ddaea9903f0930 diff --git a/trunk/fs/ocfs2/move_extents.c b/trunk/fs/ocfs2/move_extents.c index 8f3d3cb7fa97..f1fc172175b6 100644 --- a/trunk/fs/ocfs2/move_extents.c +++ b/trunk/fs/ocfs2/move_extents.c @@ -471,7 +471,7 @@ static int ocfs2_validate_and_adjust_move_goal(struct inode *inode, int ret, goal_bit = 0; struct buffer_head *gd_bh = NULL; - struct ocfs2_group_desc *bg = NULL; + struct ocfs2_group_desc *bg; struct ocfs2_super *osb = OCFS2_SB(inode->i_sb); int c_to_b = 1 << (osb->s_clustersize_bits - inode->i_sb->s_blocksize_bits); @@ -481,13 +481,6 @@ static int ocfs2_validate_and_adjust_move_goal(struct inode *inode, */ range->me_goal = ocfs2_block_to_cluster_start(inode->i_sb, range->me_goal); - /* - * moving goal is not allowd to start with a group desc blok(#0 blk) - * let's compromise to the latter cluster. - */ - if (range->me_goal == le64_to_cpu(bg->bg_blkno)) - range->me_goal += c_to_b; - /* * validate goal sits within global_bitmap, and return the victim * group desc @@ -501,6 +494,13 @@ static int ocfs2_validate_and_adjust_move_goal(struct inode *inode, bg = (struct ocfs2_group_desc *)gd_bh->b_data; + /* + * moving goal is not allowd to start with a group desc blok(#0 blk) + * let's compromise to the latter cluster. + */ + if (range->me_goal == le64_to_cpu(bg->bg_blkno)) + range->me_goal += c_to_b; + /* * movement is not gonna cross two groups. */