Lines Matching defs:bio
323 * Typically, 4KB data chunks coming from a bio will be copied to the ring
386 static int pblk_rb_flush_point_set(struct pblk_rb *rb, struct bio *bio,
410 if (bio)
411 bio_list_add(&entry->w_ctx.bios, bio);
415 return bio ? 1 : 0;
464 unsigned int *pos, struct bio *bio,
475 if (bio->bi_opf & REQ_PREFLUSH) {
479 if (pblk_rb_flush_point_set(&pblk->rwb, bio, mem))
494 int pblk_rb_may_write_user(struct pblk_rb *rb, struct bio *bio,
507 if (!pblk_rb_may_write_flush(rb, nr_entries, pos, bio, &io_ret)) {
544 * Read available entries on rb and add them to the given bio. To avoid a memory
545 * copy, a page reference to the write buffer is used to be added to the bio.
547 * This function is used by the write thread to form the write bio that will
557 struct bio *bio = rqd->bio;
591 pblk_err(pblk, "could not allocate write bio page\n");
599 if (bio_add_pc_page(q, bio, page, rb->seg_size, 0) !=
601 pblk_err(pblk, "could not add page to write bio\n");
619 if (pblk_bio_add_pages(pblk, bio, GFP_KERNEL, pad)) {
620 pblk_err(pblk, "could not pad page in write bio\n");
640 * Copy to bio only if the lba matches the one on the given cache entry.
641 * Otherwise, it means that the entry has been overwritten, and the bio should
644 int pblk_rb_copy_to_bio(struct pblk_rb *rb, struct bio *bio, sector_t lba,
676 data = bio_data(bio);