Lines Matching defs:bio

37 #include <linux/bio.h>		/* struct bio */
104 static struct bio *
105 bl_submit_bio(struct bio *bio)
107 if (bio) {
108 get_parallel(bio->bi_private);
109 dprintk("%s submitting %s bio %u@%llu\n", __func__,
110 bio_op(bio) == READ ? "read" : "write",
111 bio->bi_iter.bi_size,
112 (unsigned long long)bio->bi_iter.bi_sector);
113 submit_bio(bio);
118 static struct bio *
122 struct bio *bio;
125 bio = bio_alloc(GFP_NOIO, npg);
126 if (!bio && (current->flags & PF_MEMALLOC)) {
127 while (!bio && (npg /= 2))
128 bio = bio_alloc(GFP_NOIO, npg);
131 if (bio) {
132 bio->bi_iter.bi_sector = disk_sector;
133 bio_set_dev(bio, bdev);
134 bio->bi_end_io = end_io;
135 bio->bi_private = par;
137 return bio;
145 static struct bio *
146 do_add_page_to_bio(struct bio *bio, int npg, int rw, sector_t isect,
167 bio = bl_submit_bio(bio);
178 if (!bio) {
179 bio = bl_alloc_init_bio(npg, map->bdev,
181 if (!bio)
183 bio_set_op_attrs(bio, rw, 0);
185 if (bio_add_page(bio, page, *len, offset) < *len) {
186 bio = bl_submit_bio(bio);
189 return bio;
215 static void bl_end_io_read(struct bio *bio)
217 struct parallel_io *par = bio->bi_private;
219 if (bio->bi_status) {
228 bio_put(bio);
257 struct bio *bio = NULL;
286 bio = bl_submit_bio(bio);
307 bio = bl_submit_bio(bio);
315 bio = do_add_page_to_bio(bio,
321 if (IS_ERR(bio)) {
322 header->pnfs_error = PTR_ERR(bio);
323 bio = NULL;
340 bl_submit_bio(bio);
346 static void bl_end_io_write(struct bio *bio)
348 struct parallel_io *par = bio->bi_private;
351 if (bio->bi_status) {
357 bio_put(bio);
402 struct bio *bio = NULL;
434 bio = bl_submit_bio(bio);
445 bio = do_add_page_to_bio(bio, header->page_array.npages - i,
449 if (IS_ERR(bio)) {
450 header->pnfs_error = PTR_ERR(bio);
451 bio = NULL;
463 bl_submit_bio(bio);