Lines Matching refs:io_req
488 static int dp_init(struct dm_io_request *io_req, struct dpages *dp, in dp_init() argument
496 switch (io_req->mem.type) { in dp_init()
498 list_dp_init(dp, io_req->mem.ptr.pl, io_req->mem.offset); in dp_init()
502 bio_dp_init(dp, io_req->mem.ptr.bio); in dp_init()
506 flush_kernel_vmap_range(io_req->mem.ptr.vma, size); in dp_init()
507 if ((io_req->bi_opf & REQ_OP_MASK) == REQ_OP_READ) { in dp_init()
508 dp->vma_invalidate_address = io_req->mem.ptr.vma; in dp_init()
511 vm_dp_init(dp, io_req->mem.ptr.vma); in dp_init()
515 km_dp_init(dp, io_req->mem.ptr.addr); in dp_init()
525 int dm_io(struct dm_io_request *io_req, unsigned int num_regions, in dm_io() argument
532 r = dp_init(io_req, &dp, (unsigned long)where->count << SECTOR_SHIFT); in dm_io()
536 if (!io_req->notify.fn) in dm_io()
537 return sync_io(io_req->client, num_regions, where, in dm_io()
538 io_req->bi_opf, &dp, sync_error_bits, ioprio); in dm_io()
540 return async_io(io_req->client, num_regions, where, in dm_io()
541 io_req->bi_opf, &dp, io_req->notify.fn, in dm_io()
542 io_req->notify.context, ioprio); in dm_io()