Btrfs: fix compile warnings on on avr32 platform
authorWang Shilong <wangsl.fnst@cn.fujitsu.com>
Fri, 11 Apr 2014 10:32:25 +0000 (18:32 +0800)
committerChris Mason <clm@fb.com>
Fri, 11 Apr 2014 13:35:50 +0000 (06:35 -0700)
fs/btrfs/scrub.c: In function 'get_raid56_logic_offset':
fs/btrfs/scrub.c:2269: warning: comparison of distinct pointer types lacks a cast
fs/btrfs/scrub.c:2269: warning: right shift count >= width of type
fs/btrfs/scrub.c:2269: warning: passing argument 1 of '__div64_32' from incompatible pointer type

Since @rot is an int type, we should not use do_div(), fix it.

Reported-by: kbuild test robot <fengguang.wu@intel.com>
Signed-off-by: Wang Shilong <wangsl.fnst@cn.fujitsu.com>
Signed-off-by: Chris Mason <clm@fb.com>
fs/btrfs/scrub.c

index aee909fc622b9858233ea70ce746ae1bc723494c..68a5a26997bf57caebe9efc3a2d26da4a773c77e 100644 (file)
@@ -2266,7 +2266,7 @@ static int get_raid56_logic_offset(u64 physical, int num,
                rot = do_div(stripe_nr, map->num_stripes);
                /* calculate which stripe this data locates */
                rot += i;
-               stripe_index = do_div(rot, map->num_stripes);
+               stripe_index = rot % map->num_stripes;
                if (stripe_index == num)
                        return 0;
                if (stripe_index < num)