Lines Matching refs:stripes
32 uint32_t stripes;
35 /* The size of this target / num. stripes */
86 * <number of stripes> <chunk size> [<dev_path> <offset>]+
92 uint32_t stripes;
102 if (kstrtouint(argv[0], 10, &stripes) || !stripes) {
113 if (sector_div(width, stripes)) {
114 ti->error = "Target length not divisible by number of stripes";
125 * Do we have enough arguments for that many stripes ?
127 if (argc != (2 + 2 * stripes)) {
132 sc = kmalloc(struct_size(sc, stripe, stripes), GFP_KERNEL);
142 sc->stripes = stripes;
145 if (stripes & (stripes - 1))
148 sc->stripes_shift = __ffs(stripes);
156 ti->num_flush_bios = stripes;
157 ti->num_discard_bios = stripes;
158 ti->num_secure_erase_bios = stripes;
159 ti->num_write_zeroes_bios = stripes;
170 for (i = 0; i < stripes; i++) {
194 for (i = 0; i < sc->stripes; i++)
215 *stripe = sector_div(chunk, sc->stripes);
217 *stripe = chunk & (sc->stripes - 1);
279 BUG_ON(target_bio_nr >= sc->stripes);
287 BUG_ON(target_bio_nr >= sc->stripes);
351 * #stripes [stripe_name <stripe_name>] [group word count]
355 * #stripes [stripe chunk size]
369 DMEMIT("%d ", sc->stripes);
370 for (i = 0; i < sc->stripes; i++)
374 for (i = 0; i < sc->stripes; i++)
379 DMEMIT("%d %llu", sc->stripes,
381 for (i = 0; i < sc->stripes; i++)
388 DMEMIT(",stripes=%d,chunk_size=%llu", sc->stripes,
391 for (i = 0; i < sc->stripes; i++) {
424 * and increment error count for all stripes on that device.
428 for (i = 0; i < sc->stripes; i++)
450 } while (!ret && ++i < sc->stripes);
462 blk_limits_io_opt(limits, chunk_size * sc->stripes);