Lines Matching refs:params
296 struct table_params params; member
306 table_params_get(struct table_params *p, struct rte_swx_table_learner_params *params) in table_params_get() argument
309 if (!params || in table_params_get()
310 !params->key_size || in table_params_get()
311 (params->key_size > 64) || in table_params_get()
312 !params->n_keys_max || in table_params_get()
313 (params->n_keys_max > 1U << 31) || in table_params_get()
314 !params->key_timeout) in table_params_get()
318 p->key_size = params->key_size; in table_params_get()
326 p->key_offset = params->key_offset; in table_params_get()
329 p->action_data_size = params->action_data_size; in table_params_get()
336 p->n_buckets = rte_align32pow2(params->n_keys_max); in table_params_get()
349 p->key_timeout = params->key_timeout * rte_get_tsc_hz(); in table_params_get()
360 return (struct table_bucket *)&t->buckets[bucket_id << t->params.bucket_size_log2]; in table_bucket_get()
366 return &b->key[bucket_key_pos << t->params.key_size_log2]; in table_bucket_key_get()
372 return (uint64_t *)&b->key[t->params.bucket_key_all_size + in table_bucket_data_get()
373 (bucket_key_pos << t->params.data_size_log2)]; in table_bucket_data_get()
377 rte_swx_table_learner_footprint_get(struct rte_swx_table_learner_params *params) in rte_swx_table_learner_footprint_get() argument
382 status = table_params_get(&p, params); in rte_swx_table_learner_footprint_get()
388 rte_swx_table_learner_create(struct rte_swx_table_learner_params *params, int numa_node) in rte_swx_table_learner_create() argument
395 status = table_params_get(&p, params); in rte_swx_table_learner_create()
405 memcpy(&t->params, &p, sizeof(struct table_params)); in rte_swx_table_learner_create()
407 if (params->key_mask0) in rte_swx_table_learner_create()
408 memcpy(t->key_mask0, params->key_mask0, params->key_size); in rte_swx_table_learner_create()
410 memset(t->key_mask0, 0xFF, params->key_size); in rte_swx_table_learner_create()
423 env_free(t, t->params.total_size); in rte_swx_table_learner_free()
471 input_key = &(*key)[t->params.key_offset]; in rte_swx_table_learner_lookup()
472 input_sig = hash(input_key, t->key_mask0, t->params.key_size_pow2, 0); in rte_swx_table_learner_lookup()
473 bucket_id = input_sig & t->params.bucket_mask; in rte_swx_table_learner_lookup()
496 uint32_t key_size_pow2 = t->params.key_size_pow2; in rte_swx_table_learner_lookup()
508 b->time[i] = (input_time + t->params.key_timeout) >> 32; in rte_swx_table_learner_lookup()
559 if (t->params.action_data_size && action_data) in rte_swx_table_learner_add()
560 memcpy(&data[1], action_data, t->params.action_data_size); in rte_swx_table_learner_add()
580 b->time[i] = (input_time + t->params.key_timeout) >> 32; in rte_swx_table_learner_add()
582 memcpy(key, m->input_key, t->params.key_size); in rte_swx_table_learner_add()
586 if (t->params.action_data_size && action_data) in rte_swx_table_learner_add()
587 memcpy(&data[1], action_data, t->params.action_data_size); in rte_swx_table_learner_add()