Lines Matching defs:params
16 * @params: the parameters struct to initialize
25 * (num levels, num blocks in each level, etc.) and initialize @params.
29 int fsverity_init_merkle_tree_params(struct merkle_tree_params *params,
42 memset(params, 0, sizeof(*params));
47 params->hash_alg = hash_alg;
48 params->digest_size = hash_alg->digest_size;
50 params->hashstate = fsverity_prepare_hash_state(hash_alg, salt,
52 if (IS_ERR(params->hashstate)) {
53 err = PTR_ERR(params->hashstate);
54 params->hashstate = NULL;
65 params->log_blocksize = log_blocksize;
66 params->block_size = 1 << log_blocksize;
68 if (WARN_ON(!is_power_of_2(params->digest_size))) {
72 if (params->block_size < 2 * params->digest_size) {
75 params->block_size, hash_alg->name);
79 params->log_arity = params->log_blocksize - ilog2(params->digest_size);
80 params->hashes_per_block = 1 << params->log_arity;
83 hash_alg->name, params->block_size, params->hashes_per_block,
94 blocks = ((u64)data_size + params->block_size - 1) >> params->log_blocksize;
97 if (params->num_levels >= FS_VERITY_MAX_LEVELS) {
102 blocks = (blocks + params->hashes_per_block - 1) >>
103 params->log_arity;
105 params->level_start[params->num_levels++] = blocks;
107 params->level0_blocks = params->level_start[0];
111 for (level = (int)params->num_levels - 1; level >= 0; level--) {
112 blocks = params->level_start[level];
113 params->level_start[level] = offset;
119 params->tree_size = offset << log_blocksize;
123 kfree(params->hashstate);
124 memset(params, 0, sizeof(*params));