Lines Matching +full:many +full:- +full:to +full:- +full:one
1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Copyright (C) 2012 Fusion-io All rights reserved.
44 * bio_list and bio_list_lock are used to add more bios into the stripe
52 * plugging code to collect partial bios while plugged. The stripe
53 * locking code also uses it to hand off the stripe lock to the next
58 /* Flags that tell us if it is safe to merge with this bio. */
67 /* How many pages there are for the full stripe including P/Q */
70 /* How many sectors there are for the full stripe including P/Q */
79 /* How many pages there are for each stripe */
82 /* How many sectors there are for each stripe */
90 * rbio maps to a full stripe or not.
100 /* Bitmap to record which horizontal stripe has data */
103 /* Allocated with stripe_nsectors-many bits for finish_*() calls */
108 * to hold them both and setup their locations when the rbio is
113 * Pointers to pages that we allocated for reading/writing stripes
118 /* Pointers to the sectors in the bio_list, for faster lookup */
122 * For subpage support, we need to map each sector to above
127 /* Allocated with real_stripes-many pointers for finish_*() calls */
132 * Each bit is corresponding to one sector in either bio_sectors[] or
137 * Thus making it much harder to iterate.
156 * by RAID56 to each physical device.
158 * No matter signed or not, (-1) is always the one indicating we can not grab
178 return map->num_stripes - btrfs_nr_parity_stripes(map->type); in nr_data_stripes()
183 return bioc->num_stripes - btrfs_nr_parity_stripes(bioc->map_type); in nr_bioc_data_stripes()
186 #define RAID5_P_STRIPE ((u64)-2)
187 #define RAID6_Q_STRIPE ((u64)-1)