Lines Matching refs:ti

57 	struct dm_target *ti;  member
165 return v->data_start + dm_target_offset(v->ti, bi_sector); in verity_map_sector()
207 struct mapped_device *md = dm_table_get_md(v->ti->table); in verity_handle_err()
355 v->ti->per_bio_data_size); in verity_verify_io()
457 struct bio *bio = dm_bio_from_per_bio_data(io, v->ti->per_bio_data_size); in verity_finish_io()
546 static int verity_map(struct dm_target *ti, struct bio *bio) in verity_map() argument
548 struct dm_verity *v = ti->private; in verity_map()
569 io = dm_per_bio_data(bio, ti->per_bio_data_size); in verity_map()
590 static void verity_status(struct dm_target *ti, status_type_t type, in verity_status() argument
593 struct dm_verity *v = ti->private; in verity_status()
637 static int verity_ioctl(struct dm_target *ti, unsigned cmd, in verity_ioctl() argument
640 struct dm_verity *v = ti->private; in verity_ioctl()
644 ti->len != i_size_read(v->data_dev->bdev->bd_inode) >> SECTOR_SHIFT) in verity_ioctl()
651 static int verity_merge(struct dm_target *ti, struct bvec_merge_data *bvm, in verity_merge() argument
654 struct dm_verity *v = ti->private; in verity_merge()
666 static int verity_iterate_devices(struct dm_target *ti, in verity_iterate_devices() argument
669 struct dm_verity *v = ti->private; in verity_iterate_devices()
671 return fn(ti, v->data_dev, v->data_start, ti->len, data); in verity_iterate_devices()
674 static void verity_io_hints(struct dm_target *ti, struct queue_limits *limits) in verity_io_hints() argument
676 struct dm_verity *v = ti->private; in verity_io_hints()
687 static void verity_dtr(struct dm_target *ti) in verity_dtr() argument
689 struct dm_verity *v = ti->private; in verity_dtr()
709 dm_put_device(ti, v->hash_dev); in verity_dtr()
712 dm_put_device(ti, v->data_dev); in verity_dtr()
731 static int verity_ctr(struct dm_target *ti, unsigned argc, char **argv) in verity_ctr() argument
749 ti->error = "Cannot allocate verity structure"; in verity_ctr()
752 ti->private = v; in verity_ctr()
753 v->ti = ti; in verity_ctr()
755 if ((dm_table_get_mode(ti->table) & ~FMODE_READ)) { in verity_ctr()
756 ti->error = "Device must be readonly"; in verity_ctr()
762 ti->error = "Not enough arguments"; in verity_ctr()
769 ti->error = "Invalid version"; in verity_ctr()
775 r = dm_get_device(ti, argv[1], FMODE_READ, &v->data_dev); in verity_ctr()
777 ti->error = "Data device lookup failed"; in verity_ctr()
781 r = dm_get_device(ti, argv[2], FMODE_READ, &v->hash_dev); in verity_ctr()
783 ti->error = "Data device lookup failed"; in verity_ctr()
791 ti->error = "Invalid data device block size"; in verity_ctr()
801 ti->error = "Invalid hash device block size"; in verity_ctr()
810 ti->error = "Invalid data blocks"; in verity_ctr()
816 if (ti->len > (v->data_blocks << (v->data_dev_block_bits - SECTOR_SHIFT))) { in verity_ctr()
817 ti->error = "Data device is too small"; in verity_ctr()
825 ti->error = "Invalid hash start"; in verity_ctr()
833 ti->error = "Cannot allocate algorithm name"; in verity_ctr()
840 ti->error = "Cannot initialize hash function"; in verity_ctr()
847 ti->error = "Digest size too big"; in verity_ctr()
856 ti->error = "Cannot allocate root digest"; in verity_ctr()
862 ti->error = "Invalid root digest"; in verity_ctr()
871 ti->error = "Cannot allocate salt"; in verity_ctr()
877 ti->error = "Invalid salt"; in verity_ctr()
891 r = dm_read_arg_group(_args, &as, &opt_params, &ti->error); in verity_ctr()
899 ti->error = "Not enough feature arguments"; in verity_ctr()
909 ti->error = "Invalid feature arguments"; in verity_ctr()
927 ti->error = "Too many tree levels"; in verity_ctr()
939 ti->error = "Hash device offset overflow"; in verity_ctr()
951 ti->error = "Cannot initialize dm-bufio"; in verity_ctr()
958 ti->error = "Hash device is too small"; in verity_ctr()
963ti->per_bio_data_size = roundup(sizeof(struct dm_verity_io) + v->shash_descsize + v->digest_size *… in verity_ctr()
968 ti->error = "Cannot allocate vector mempool"; in verity_ctr()
976 ti->error = "Cannot allocate workqueue"; in verity_ctr()
984 verity_dtr(ti); in verity_ctr()