int *vict_bit,
                                         struct buffer_head **ret_bh)
 {
-       int ret, i, blocks_per_unit = 1;
+       int ret, i, bits_per_unit = 0;
        u64 blkno;
        char namebuf[40];
 
        rec = &(cl->cl_recs[0]);
 
        if (type == GLOBAL_BITMAP_SYSTEM_INODE)
-               blocks_per_unit <<= (osb->s_clustersize_bits -
-                                               inode->i_sb->s_blocksize_bits);
+               bits_per_unit = osb->s_clustersize_bits -
+                                       inode->i_sb->s_blocksize_bits;
        /*
         * 'vict_blkno' was out of the valid range.
         */
        if ((vict_blkno < le64_to_cpu(rec->c_blkno)) ||
-           (vict_blkno >= (le32_to_cpu(ac_dinode->id1.bitmap1.i_total) *
-                               blocks_per_unit))) {
+           (vict_blkno >= (le32_to_cpu(ac_dinode->id1.bitmap1.i_total) <<
+                               bits_per_unit))) {
                ret = -EINVAL;
                goto out;
        }
                                                le16_to_cpu(bg->bg_bits))) {
 
                                *ret_bh = gd_bh;
-                               *vict_bit = (vict_blkno - blkno) /
-                                                       blocks_per_unit;
+                               *vict_bit = (vict_blkno - blkno) >>
+                                                       bits_per_unit;
                                mlog(0, "find the victim group: #%llu, "
                                     "total_bits: %u, vict_bit: %u\n",
                                     blkno, le16_to_cpu(bg->bg_bits),
        /*
         * make goal become cluster aligned.
         */
-       if (range->me_goal % c_to_b)
-               range->me_goal = range->me_goal / c_to_b * c_to_b;
-
+       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.