Lines Matching refs:rw
281 static void do_region(int rw, unsigned region, struct dm_io_region *where, in do_region() argument
298 if (rw & REQ_DISCARD) in do_region()
300 else if (rw & REQ_WRITE_SAME) in do_region()
302 if ((rw & (REQ_DISCARD | REQ_WRITE_SAME)) && special_cmd_max_sectors == 0) { in do_region()
316 if ((rw & REQ_DISCARD) || (rw & REQ_WRITE_SAME)) in do_region()
328 if (rw & REQ_DISCARD) { in do_region()
332 } else if (rw & REQ_WRITE_SAME) { in do_region()
359 submit_bio(rw, bio); in do_region()
363 static void dispatch_io(int rw, unsigned int num_regions, in dispatch_io() argument
373 rw |= REQ_SYNC; in dispatch_io()
381 if (where[i].count || (rw & REQ_FLUSH)) in dispatch_io()
382 do_region(rw, i, where + i, dp, io); in dispatch_io()
406 struct dm_io_region *where, int rw, struct dpages *dp, in sync_io() argument
412 if (num_regions > 1 && (rw & RW_MASK) != WRITE) { in sync_io()
429 dispatch_io(rw, num_regions, where, dp, io, 1); in sync_io()
440 struct dm_io_region *where, int rw, struct dpages *dp, in async_io() argument
445 if (num_regions > 1 && (rw & RW_MASK) != WRITE) { in async_io()
461 dispatch_io(rw, num_regions, where, dp, io, 0); in async_io()