• Home
  • Raw
  • Download

Lines Matching refs:per_dev

270 void _ore_add_sg_seg(struct ore_per_dev_state *per_dev, unsigned cur_len,  in _ore_add_sg_seg()  argument
277 per_dev->dev, cur_len, not_last, per_dev->cur_sg, in _ore_add_sg_seg()
278 _LLU(per_dev->offset), per_dev->length, in _ore_add_sg_seg()
279 per_dev->last_sgs_total); in _ore_add_sg_seg()
281 if (!per_dev->cur_sg) { in _ore_add_sg_seg()
282 sge = per_dev->sglist; in _ore_add_sg_seg()
285 if (per_dev->length) { in _ore_add_sg_seg()
286 ++per_dev->cur_sg; in _ore_add_sg_seg()
287 sge->offset = per_dev->offset; in _ore_add_sg_seg()
288 sge->len = per_dev->length; in _ore_add_sg_seg()
295 per_dev->offset += cur_len; in _ore_add_sg_seg()
300 sge = &per_dev->sglist[per_dev->cur_sg - 1]; in _ore_add_sg_seg()
301 sge->len = per_dev->length - per_dev->last_sgs_total; in _ore_add_sg_seg()
308 ++per_dev->cur_sg; in _ore_add_sg_seg()
311 per_dev->last_sgs_total = per_dev->length; in _ore_add_sg_seg()
315 --per_dev->cur_sg; in _ore_add_sg_seg()
341 struct ore_per_dev_state *per_dev; in _add_to_r4w() local
358 per_dev = &read_ios->per_dev[comp]; in _add_to_r4w()
359 if (!per_dev->length) { in _add_to_r4w()
360 per_dev->bio = bio_kmalloc(GFP_KERNEL, in _add_to_r4w()
362 if (unlikely(!per_dev->bio)) { in _add_to_r4w()
367 per_dev->offset = si->obj_offset; in _add_to_r4w()
368 per_dev->dev = si->dev; in _add_to_r4w()
369 } else if (si->obj_offset != (per_dev->offset + per_dev->length)) { in _add_to_r4w()
370 u64 gap = si->obj_offset - (per_dev->offset + per_dev->length); in _add_to_r4w()
372 _ore_add_sg_seg(per_dev, gap, true); in _add_to_r4w()
374 q = osd_request_queue(ore_comp_dev(read_ios->oc, per_dev->dev)); in _add_to_r4w()
375 added_len = bio_add_pc_page(q, per_dev->bio, page, pg_len, in _add_to_r4w()
379 per_dev->bio->bi_vcnt); in _add_to_r4w()
383 per_dev->length += pg_len; in _add_to_r4w()
435 struct bio *bio = ios->per_dev[d].bio; in _mark_read4write_pages_uptodate()
626 struct ore_per_dev_state *per_dev, in _ore_add_parity_unit() argument
630 if (per_dev->cur_sg >= ios->sgs_per_dev) { in _ore_add_parity_unit()
632 per_dev->cur_sg, ios->sgs_per_dev); in _ore_add_parity_unit()
635 _ore_add_sg_seg(per_dev, cur_len, true); in _ore_add_parity_unit()
647 if (!per_dev->length) { in _ore_add_parity_unit()
648 per_dev->offset += si->cur_pg * PAGE_SIZE; in _ore_add_parity_unit()
672 per_dev, num_pages * PAGE_SIZE); in _ore_add_parity_unit()
717 kfree(ios->per_dev[0].sglist); in _ore_free_raid_stuff()