Btrfs: remove unnecessary code of stripe_index assignment in __btrfs_map_block
[firefly-linux-kernel-4.4.55.git] / fs / btrfs / volumes.c
index d47289c715c814f47c7842349afc942640310238..6f5b302a08cf80f42f59599a95f4cb3cac3963f2 100644 (file)
@@ -5161,15 +5161,12 @@ static int __btrfs_map_block(struct btrfs_fs_info *fs_info, int rw,
                                BTRFS_BLOCK_GROUP_RAID6)) {
                u64 tmp;
 
-               if (bbio_ret && ((rw & REQ_WRITE) || mirror_num > 1)
-                   && raid_map_ret) {
+               if (raid_map_ret && ((rw & REQ_WRITE) || mirror_num > 1)) {
                        int i, rot;
 
                        /* push stripe_nr back to the start of the full stripe */
                        stripe_nr = raid56_full_stripe_start;
-                       do_div(stripe_nr, stripe_len);
-
-                       stripe_index = do_div(stripe_nr, nr_data_stripes(map));
+                       do_div(stripe_nr, stripe_len * nr_data_stripes(map));
 
                        /* RAID[56] write or recovery. Return all stripes */
                        num_stripes = map->num_stripes;