Lines Matching refs:vi

152 	struct fsverity_info *vi;  in fsverity_create_info()  local
184 vi = kmem_cache_zalloc(fsverity_info_cachep, GFP_KERNEL); in fsverity_create_info()
185 if (!vi) in fsverity_create_info()
187 vi->inode = inode; in fsverity_create_info()
189 err = fsverity_init_merkle_tree_params(&vi->tree_params, inode, in fsverity_create_info()
200 memcpy(vi->root_hash, desc->root_hash, vi->tree_params.digest_size); in fsverity_create_info()
202 err = compute_file_measurement(vi->tree_params.hash_alg, desc, in fsverity_create_info()
203 vi->measurement); in fsverity_create_info()
209 vi->tree_params.hash_alg->name, in fsverity_create_info()
210 vi->tree_params.digest_size, vi->measurement); in fsverity_create_info()
212 err = fsverity_verify_signature(vi, desc, desc_size); in fsverity_create_info()
215 fsverity_free_info(vi); in fsverity_create_info()
216 vi = ERR_PTR(err); in fsverity_create_info()
218 return vi; in fsverity_create_info()
221 void fsverity_set_info(struct inode *inode, struct fsverity_info *vi) in fsverity_set_info() argument
229 if (cmpxchg_release(&inode->i_verity_info, NULL, vi) != NULL) { in fsverity_set_info()
231 fsverity_free_info(vi); in fsverity_set_info()
240 void fsverity_free_info(struct fsverity_info *vi) in fsverity_free_info() argument
242 if (!vi) in fsverity_free_info()
244 kfree(vi->tree_params.hashstate); in fsverity_free_info()
245 kmem_cache_free(fsverity_info_cachep, vi); in fsverity_free_info()
251 struct fsverity_info *vi = fsverity_get_info(inode); in ensure_verity_info() local
255 if (vi) in ensure_verity_info()
278 vi = fsverity_create_info(inode, desc, res); in ensure_verity_info()
279 if (IS_ERR(vi)) { in ensure_verity_info()
280 res = PTR_ERR(vi); in ensure_verity_info()
284 fsverity_set_info(inode, vi); in ensure_verity_info()