summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/scrub.c
diff options
context:
space:
mode:
authorDavid Sterba2015-02-20 18:43:47 +0100
committerDavid Sterba2015-03-03 17:24:01 +0100
commit47c5713f4737e460a3b2535abb8ae2e2afe2d2d0 (patch)
tree918e1930e0de0e607736cd7845fc4d3db92d24aa /fs/btrfs/scrub.c
parentbtrfs: cleanup 64bit/32bit divs, provably bounded values (diff)
downloadkernel-qcow2-linux-47c5713f4737e460a3b2535abb8ae2e2afe2d2d0.tar.gz
kernel-qcow2-linux-47c5713f4737e460a3b2535abb8ae2e2afe2d2d0.tar.xz
kernel-qcow2-linux-47c5713f4737e460a3b2535abb8ae2e2afe2d2d0.zip
btrfs: replace remaining do_div calls with div_u64 variants
Switch to div_u64_rem that does type checking and has more obvious semantics than do_div. Signed-off-by: David Sterba <dsterba@suse.cz>
Diffstat (limited to 'fs/btrfs/scrub.c')
-rw-r--r--fs/btrfs/scrub.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/btrfs/scrub.c b/fs/btrfs/scrub.c
index 293262163daf..c21581e0be7a 100644
--- a/fs/btrfs/scrub.c
+++ b/fs/btrfs/scrub.c
@@ -2328,7 +2328,7 @@ static inline void __scrub_mark_bitmap(struct scrub_parity *sparity,
}
start -= sparity->logic_start;
- offset = (int)do_div(start, sparity->stripe_len);
+ start = div_u64_rem(start, sparity->stripe_len, &offset);
offset /= sectorsize;
nsectors = (int)len / sectorsize;
@@ -2627,7 +2627,7 @@ static int get_raid56_logic_offset(u64 physical, int num,
stripe_nr = div_u64(stripe_nr, nr_data_stripes(map));
/* Work out the disk rotation on this stripe-set */
- rot = do_div(stripe_nr, map->num_stripes);
+ stripe_nr = div_u64_rem(stripe_nr, map->num_stripes, &rot);
/* calculate which stripe this data locates */
rot += i;
stripe_index = rot % map->num_stripes;