Lines Matching defs:params
17 * @params: the parameters struct to initialize
26 * (num levels, num blocks in each level, etc.) and initialize @params.
30 int fsverity_init_merkle_tree_params(struct merkle_tree_params *params,
44 memset(params, 0, sizeof(*params));
49 params->hash_alg = hash_alg;
50 params->digest_size = hash_alg->digest_size;
52 params->hashstate = fsverity_prepare_hash_state(hash_alg, salt,
54 if (IS_ERR(params->hashstate)) {
55 err = PTR_ERR(params->hashstate);
56 params->hashstate = NULL;
83 params->log_blocksize = log_blocksize;
84 params->block_size = 1 << log_blocksize;
85 params->log_blocks_per_page = PAGE_SHIFT - log_blocksize;
86 params->blocks_per_page = 1 << params->log_blocks_per_page;
88 if (WARN_ON_ONCE(!is_power_of_2(params->digest_size))) {
92 if (params->block_size < 2 * params->digest_size) {
95 params->block_size, hash_alg->name);
99 params->log_digestsize = ilog2(params->digest_size);
100 params->log_arity = log_blocksize - params->log_digestsize;
101 params->hashes_per_block = 1 << params->log_arity;
111 blocks = ((u64)data_size + params->block_size - 1) >> params->log_blocksize;
113 if (params->num_levels >= FS_VERITY_MAX_LEVELS) {
118 blocks = (blocks + params->hashes_per_block - 1) >>
119 params->log_arity;
120 blocks_in_level[params->num_levels++] = blocks;
125 for (level = (int)params->num_levels - 1; level >= 0; level--) {
126 params->level_start[level] = offset;
142 if ((params->block_size != PAGE_SIZE && offset > 1 << 23) ||
149 params->tree_size = offset << log_blocksize;
150 params->tree_pages = PAGE_ALIGN(params->tree_size) >> PAGE_SHIFT;
154 kfree(params->hashstate);
155 memset(params, 0, sizeof(*params));