Lines Matching defs:io_req
464 static int dp_init(struct dm_io_request *io_req, struct dpages *dp,
472 switch (io_req->mem.type) {
474 list_dp_init(dp, io_req->mem.ptr.pl, io_req->mem.offset);
478 bio_dp_init(dp, io_req->mem.ptr.bio);
482 flush_kernel_vmap_range(io_req->mem.ptr.vma, size);
483 if ((io_req->bi_opf & REQ_OP_MASK) == REQ_OP_READ) {
484 dp->vma_invalidate_address = io_req->mem.ptr.vma;
487 vm_dp_init(dp, io_req->mem.ptr.vma);
491 km_dp_init(dp, io_req->mem.ptr.addr);
501 int dm_io(struct dm_io_request *io_req, unsigned int num_regions,
508 if (num_regions > 1 && !op_is_write(io_req->bi_opf)) {
513 r = dp_init(io_req, &dp, (unsigned long)where->count << SECTOR_SHIFT);
517 if (!io_req->notify.fn)
518 return sync_io(io_req->client, num_regions, where,
519 io_req->bi_opf, &dp, sync_error_bits, ioprio);
521 async_io(io_req->client, num_regions, where, io_req->bi_opf, &dp,
522 io_req->notify.fn, io_req->notify.context, ioprio);