Home
last modified time | relevance | path

Searched refs:stripe (Results 1 – 25 of 54) sorted by relevance

123

/linux/fs/btrfs/
H A Dscrub.c231 static void release_scrub_stripe(struct scrub_stripe *stripe) in release_scrub_stripe() argument
233 if (!stripe) in release_scrub_stripe()
237 if (stripe->pages[i]) in release_scrub_stripe()
238 __free_page(stripe->pages[i]); in release_scrub_stripe()
239 stripe->pages[i] = NULL; in release_scrub_stripe()
241 kfree(stripe->sectors); in release_scrub_stripe()
242 kfree(stripe->csums); in release_scrub_stripe()
243 stripe->sectors = NULL; in release_scrub_stripe()
244 stripe->csums = NULL; in release_scrub_stripe()
245 stripe->sctx = NULL; in release_scrub_stripe()
[all …]
H A Draid56.c1133 struct btrfs_io_stripe *stripe; in rbio_add_io_sector() local
1147 stripe = &rbio->bioc->stripes[stripe_nr]; in rbio_add_io_sector()
1148 disk_start = stripe->physical + sector_nr * sectorsize; in rbio_add_io_sector()
1151 if (!stripe->dev->bdev) { in rbio_add_io_sector()
1175 last->bi_bdev == stripe->dev->bdev) { in rbio_add_io_sector()
1184 bio = bio_alloc(stripe->dev->bdev, in rbio_add_io_sector()
1299 int stripe; in generate_pq_vertical() local
1303 for (stripe = 0; stripe < rbio->nr_data; stripe++) { in generate_pq_vertical()
1304 sector = sector_in_rbio(rbio, stripe, sectornr, 0); in generate_pq_vertical()
1305 pointers[stripe] = kmap_local_page(sector->page) + in generate_pq_vertical()
[all …]
H A Draid-stripe-tree.c188 u32 stripe_index, struct btrfs_io_stripe *stripe) in btrfs_get_raid_extent_offset() argument
213 if (stripe->rst_search_commit_root) { in btrfs_get_raid_extent_offset()
266 if (devid != stripe->dev->devid) in btrfs_get_raid_extent_offset()
272 stripe->physical = physical + offset; in btrfs_get_raid_extent_offset()
275 stripe->physical, devid); in btrfs_get_raid_extent_offset()
286 if (ret && ret != -EIO && !stripe->rst_search_commit_root) { in btrfs_get_raid_extent_offset()
289 logical, logical + *length, stripe->dev->devid, in btrfs_get_raid_extent_offset()
H A Dbio.c392 struct btrfs_io_stripe *stripe = bio->bi_private; in btrfs_orig_write_end_io() local
393 struct btrfs_io_context *bioc = stripe->bioc; in btrfs_orig_write_end_io()
400 btrfs_log_dev_io_error(bio, stripe->dev); in btrfs_orig_write_end_io()
413 stripe->physical = bio->bi_iter.bi_sector << SECTOR_SHIFT; in btrfs_orig_write_end_io()
421 struct btrfs_io_stripe *stripe = bio->bi_private; in btrfs_clone_write_end_io() local
424 atomic_inc(&stripe->bioc->error); in btrfs_clone_write_end_io()
425 btrfs_log_dev_io_error(bio, stripe->dev); in btrfs_clone_write_end_io()
427 stripe->physical = bio->bi_iter.bi_sector << SECTOR_SHIFT; in btrfs_clone_write_end_io()
431 bio_endio(stripe->bioc->orig_bio); in btrfs_clone_write_end_io()
H A Draid-stripe-tree.h27 u32 stripe_index, struct btrfs_io_stripe *stripe);
H A Dprint-tree.c208 struct btrfs_stripe_extent *stripe) in print_raid_stripe_key() argument
214 i, btrfs_raid_stride_devid(eb, &stripe->strides[i]), in print_raid_stripe_key()
215 btrfs_raid_stride_physical(eb, &stripe->strides[i])); in print_raid_stripe_key()
/linux/drivers/md/
H A Ddm-stripe.c24 struct stripe { struct
47 struct stripe stripe[] __counted_by(stripes); argument
65 unsigned int stripe, char **argv) in get_stripe() argument
75 &sc->stripe[stripe].dev); in get_stripe()
79 sc->stripe[stripe].physical_start = start; in get_stripe()
132 sc = kmalloc(struct_size(sc, stripe, stripes), GFP_KERNEL); in stripe_ctr()
178 dm_put_device(ti, sc->stripe[i].dev); in stripe_ctr()
182 atomic_set(&(sc->stripe[i].error_count), 0); in stripe_ctr()
196 dm_put_device(ti, sc->stripe[i].dev); in stripe_dtr()
203 uint32_t *stripe, sector_t *result) in stripe_map_sector() argument
[all …]
/linux/drivers/staging/media/ipu3/
H A Dipu3-css-params.c1005 osys->stripe[s].crop_top[pin] = in imgu_css_osys_calc()
1007 osys->stripe[s].input_width = in imgu_css_osys_calc()
1009 osys->stripe[s].input_height = in imgu_css_osys_calc()
1011 osys->stripe[s].block_height = in imgu_css_osys_calc()
1013 osys->stripe[s].block_width = in imgu_css_osys_calc()
1015 osys->stripe[s].output_width[pin] = in imgu_css_osys_calc()
1017 osys->stripe[s].output_height[pin] = in imgu_css_osys_calc()
1022 osys->stripe[s].crop_left[pin] = in imgu_css_osys_calc()
1024 osys->stripe[s].output_offset[pin] = in imgu_css_osys_calc()
1032 osys->stripe[s].crop_left[pin] = 0; in imgu_css_osys_calc()
[all …]
/linux/drivers/md/bcache/
H A Dwriteback.c601 int stripe; in bcache_dev_sectors_dirty_add() local
606 stripe = offset_to_stripe(d, offset); in bcache_dev_sectors_dirty_add()
607 if (stripe < 0) in bcache_dev_sectors_dirty_add()
622 if (stripe >= d->nr_stripes) in bcache_dev_sectors_dirty_add()
626 d->stripe_sectors_dirty + stripe); in bcache_dev_sectors_dirty_add()
628 if (!test_bit(stripe, d->full_dirty_stripes)) in bcache_dev_sectors_dirty_add()
629 set_bit(stripe, d->full_dirty_stripes); in bcache_dev_sectors_dirty_add()
631 if (test_bit(stripe, d->full_dirty_stripes)) in bcache_dev_sectors_dirty_add()
632 clear_bit(stripe, d->full_dirty_stripes); in bcache_dev_sectors_dirty_add()
637 stripe++; in bcache_dev_sectors_dirty_add()
[all …]
H A Dwriteback.h82 int stripe = offset_to_stripe(&dc->disk, offset); in bcache_dev_stripe_dirty() local
84 if (stripe < 0) in bcache_dev_stripe_dirty()
88 if (atomic_read(dc->disk.stripe_sectors_dirty + stripe)) in bcache_dev_stripe_dirty()
95 stripe++; in bcache_dev_stripe_dirty()
/linux/Documentation/driver-api/md/
H A Draid5-ppl.rst6 addressed by PPL is that after a dirty shutdown, parity of a particular stripe
15 Partial parity for a write operation is the XOR of stripe data chunks not
18 the stripe, consistent with its state before the write operation, regardless of
20 this stripe is missing, this updated parity can be used to recover its
29 stripe. It does not require a dedicated journaling drive. Write performance is
36 silent data corruption. If a dirty disk of a stripe is lost, no PPL recovery is
37 performed for this stripe (parity is not updated). So it is possible to have
38 arbitrary data in the written part of a stripe if that disk is lost. In such
H A Draid5-cache.rst27 and parity don't match. The reason is that a stripe write involves several RAID
52 write. If a write crosses all RAID disks of a stripe, we call it full-stripe
53 write. For non-full-stripe writes, MD must read old data before the new parity
57 RAID disks only after the data becomes a full stripe write. This will
101 release the memory cache. The flush conditions could be stripe becomes a full
102 stripe write, free cache disk space is low or free in-kernel memory cache space
107 data and data. If MD finds a stripe with data and valid parities (1 parity for
/linux/fs/nfs/blocklayout/
H A Ddev.c187 p = xdr_decode_hyper(p, &b->stripe.chunk_size); in nfs4_block_decode_volume()
188 b->stripe.volumes_count = be32_to_cpup(p++); in nfs4_block_decode_volume()
189 if (b->stripe.volumes_count > PNFS_BLOCK_MAX_DEVICES) { in nfs4_block_decode_volume()
190 dprintk("Too many volumes: %d\n", b->stripe.volumes_count); in nfs4_block_decode_volume()
194 p = xdr_inline_decode(xdr, b->stripe.volumes_count * 4); in nfs4_block_decode_volume()
197 for (i = 0; i < b->stripe.volumes_count; i++) in nfs4_block_decode_volume()
198 b->stripe.volumes[i] = be32_to_cpup(p++); in nfs4_block_decode_volume()
492 d->children = kcalloc(v->stripe.volumes_count, in bl_parse_stripe()
497 for (i = 0; i < v->stripe.volumes_count; i++) { in bl_parse_stripe()
499 volumes, v->stripe.volumes[i], gfp_mask); in bl_parse_stripe()
[all …]
H A Dblocklayout.h83 } stripe; member
/linux/fs/bcachefs/
H A Dalloc_background_format.h19 x(stripe, 32) \
42 x(stripe, 32) \
70 __u32 stripe; member
H A Dalloc_background.h47 dst->stripe = src.stripe; in alloc_to_bucket()
57 dst->stripe = src.stripe; in __bucket_m_to_alloc()
133 if (a.stripe) in alloc_data_type()
H A Dalloc_foreground.c693 static int __dev_stripe_cmp(struct dev_stripe_state *stripe, in __dev_stripe_cmp() argument
696 return ((stripe->next_alloc[l] > stripe->next_alloc[r]) - in __dev_stripe_cmp()
697 (stripe->next_alloc[l] < stripe->next_alloc[r])); in __dev_stripe_cmp()
700 #define dev_stripe_cmp(l, r) __dev_stripe_cmp(stripe, l, r)
703 struct dev_stripe_state *stripe, in bch2_dev_alloc_list() argument
717 struct dev_stripe_state *stripe, in bch2_dev_stripe_increment_inlined() argument
720 u64 *v = stripe->next_alloc + ca->dev_idx; in bch2_dev_stripe_increment_inlined()
732 for (v = stripe->next_alloc; in bch2_dev_stripe_increment_inlined()
733 v < stripe->next_alloc + ARRAY_SIZE(stripe->next_alloc); v++) in bch2_dev_stripe_increment_inlined()
738 struct dev_stripe_state *stripe) in bch2_dev_stripe_increment() argument
[all …]
H A Dec.h225 void bch2_stripes_heap_update(struct bch_fs *, struct stripe *, size_t);
226 void bch2_stripes_heap_del(struct bch_fs *, struct stripe *, size_t);
227 void bch2_stripes_heap_insert(struct bch_fs *, struct stripe *, size_t);
H A Dec.c194 if (bch2_trans_inconsistent_on(a->stripe || in __mark_stripe_bucket()
200 a->stripe, s.k->p.offset, in __mark_stripe_bucket()
217 if (bch2_trans_inconsistent_on(a->stripe != s.k->p.offset || in __mark_stripe_bucket()
221 a->stripe, in __mark_stripe_bucket()
258 a->stripe = s.k->p.offset; in __mark_stripe_bucket()
261 a->stripe = 0; in __mark_stripe_bucket()
361 static inline void stripe_to_mem(struct stripe *m, const struct bch_stripe *s) in stripe_to_mem()
468 struct stripe *m = genradix_ptr(&c->stripes, idx); in bch2_trigger_stripe()
810 struct ec_stripe_buf *stripe) in get_stripe_key_trans() argument
825 bkey_reassemble(&stripe->key, k); in get_stripe_key_trans()
[all …]
H A Ddisk_accounting_format.h63 x(stripe, 7) \
/linux/Documentation/admin-guide/device-mapper/
H A Dunstriped.rst14 <number of stripes> <chunk size> <stripe #> <dev_path> <offset>
25 <stripe #>
26 The stripe number within the device that corresponds to physical
33 An example of undoing an existing dm-stripe
88 in a 256k stripe across the two cores::
H A Ddm-raid.rst83 "stripe size". It is the only mandatory parameter and
194 starting at data_offset to fill up a new stripe with the larger
196 and write that new stripe to offset 0. Same will be applied to all
355 of a RAID 4/5/6 stripe and if subsequent read results are not
416 1.14.0 Fix reshape race on small devices. Fix stripe adding reshape
H A Dstriped.rst2 dm-stripe
/linux/drivers/staging/media/atomisp/pci/isp/modes/interface/
H A Disp_const.h75 #define CEIL_ROUND_DIV_STRIPE(width, stripe, padding) \ argument
76 …CEIL_MUL(padding + CEIL_DIV(width - padding, stripe), ((ENABLE_RAW_BINNING || ENABLE_FIXED_BAYER_D…
/linux/Documentation/admin-guide/
H A Dxfs.rst134 stripe unit configured at **mkfs(8)** time.
147 Data allocations will not be aligned at stripe unit
183 Used to specify the stripe unit and width for a RAID device
184 or a stripe volume. "value" must be specified in 512-byte
200 Data allocations will be rounded up to stripe width boundaries
202 size is larger than the stripe width size.

123