Lines Matching refs:ti
29 int dm_linear_ctr(struct dm_target *ti, unsigned int argc, char **argv) in dm_linear_ctr() argument
37 ti->error = "Invalid argument count"; in dm_linear_ctr()
43 ti->error = "Cannot allocate linear context"; in dm_linear_ctr()
49 ti->error = "Invalid device sector"; in dm_linear_ctr()
54 ret = dm_get_device(ti, argv[0], dm_table_get_mode(ti->table), &lc->dev); in dm_linear_ctr()
56 ti->error = "Device lookup failed"; in dm_linear_ctr()
60 ti->num_flush_bios = 1; in dm_linear_ctr()
61 ti->num_discard_bios = 1; in dm_linear_ctr()
62 ti->num_write_same_bios = 1; in dm_linear_ctr()
63 ti->num_write_zeroes_bios = 1; in dm_linear_ctr()
64 ti->private = lc; in dm_linear_ctr()
72 void dm_linear_dtr(struct dm_target *ti) in dm_linear_dtr() argument
74 struct linear_c *lc = (struct linear_c *) ti->private; in dm_linear_dtr()
76 dm_put_device(ti, lc->dev); in dm_linear_dtr()
80 static sector_t linear_map_sector(struct dm_target *ti, sector_t bi_sector) in linear_map_sector() argument
82 struct linear_c *lc = ti->private; in linear_map_sector()
84 return lc->start + dm_target_offset(ti, bi_sector); in linear_map_sector()
87 static void linear_map_bio(struct dm_target *ti, struct bio *bio) in linear_map_bio() argument
89 struct linear_c *lc = ti->private; in linear_map_bio()
94 linear_map_sector(ti, bio->bi_iter.bi_sector); in linear_map_bio()
97 int dm_linear_map(struct dm_target *ti, struct bio *bio) in dm_linear_map() argument
99 linear_map_bio(ti, bio); in dm_linear_map()
104 int dm_linear_end_io(struct dm_target *ti, struct bio *bio, in dm_linear_end_io() argument
107 struct linear_c *lc = ti->private; in dm_linear_end_io()
110 dm_remap_zone_report(ti, bio, lc->start); in dm_linear_end_io()
116 void dm_linear_status(struct dm_target *ti, status_type_t type, in dm_linear_status() argument
119 struct linear_c *lc = (struct linear_c *) ti->private; in dm_linear_status()
133 int dm_linear_prepare_ioctl(struct dm_target *ti, in dm_linear_prepare_ioctl() argument
136 struct linear_c *lc = (struct linear_c *) ti->private; in dm_linear_prepare_ioctl()
145 ti->len != i_size_read(dev->bdev->bd_inode) >> SECTOR_SHIFT) in dm_linear_prepare_ioctl()
150 int dm_linear_iterate_devices(struct dm_target *ti, in dm_linear_iterate_devices() argument
153 struct linear_c *lc = ti->private; in dm_linear_iterate_devices()
155 return fn(ti, lc->dev, lc->start, ti->len, data); in dm_linear_iterate_devices()
158 long dm_linear_dax_direct_access(struct dm_target *ti, pgoff_t pgoff, in dm_linear_dax_direct_access() argument
162 struct linear_c *lc = ti->private; in dm_linear_dax_direct_access()
167 dev_sector = linear_map_sector(ti, sector); in dm_linear_dax_direct_access()
175 size_t dm_linear_dax_copy_from_iter(struct dm_target *ti, pgoff_t pgoff, in dm_linear_dax_copy_from_iter() argument
178 struct linear_c *lc = ti->private; in dm_linear_dax_copy_from_iter()
183 dev_sector = linear_map_sector(ti, sector); in dm_linear_dax_copy_from_iter()