diff options
author | Petri Savolainen <petri.savolainen@nokia.com> | 2022-10-28 17:43:21 +0300 |
---|---|---|
committer | Matias Elo <matias.elo@nokia.com> | 2022-12-02 17:11:00 +0200 |
commit | 79f3932daa0b04815441790a9a0b4d4cb2e621aa (patch) | |
tree | 718414a1133a134cc02b4a96e9c1110c10a257df /platform | |
parent | d3485f67b0f67d1be47baade21240c8adece5921 (diff) |
api: cls: deprecate drop policy
Classifier drop policy option is not well defined and does not
relate to other API features.
Signed-off-by: Petri Savolainen <petri.savolainen@nokia.com>
Reviewed-by: Jere Leppänen <jere.leppanen@nokia.com>
Reviewed-by: Kiran Kumar K <kirankumark@marvell.com>
Diffstat (limited to 'platform')
-rw-r--r-- | platform/linux-generic/include/odp_classification_datamodel.h | 2 | ||||
-rw-r--r-- | platform/linux-generic/odp_classification.c | 14 |
2 files changed, 15 insertions, 1 deletions
diff --git a/platform/linux-generic/include/odp_classification_datamodel.h b/platform/linux-generic/include/odp_classification_datamodel.h index 00df57bef..daa783b07 100644 --- a/platform/linux-generic/include/odp_classification_datamodel.h +++ b/platform/linux-generic/include/odp_classification_datamodel.h @@ -145,7 +145,9 @@ typedef struct ODP_ALIGNED_CACHE cos_s { bool queue_group; odp_cls_hash_proto_t hash_proto; odp_pktin_vector_config_t vector; /* Packet vector config */ +#if ODP_DEPRECATED_API odp_cls_drop_t drop_policy; /* Associated Drop Policy */ +#endif size_t headroom; /* Headroom for this CoS */ odp_spinlock_t lock; /* cos lock */ odp_queue_param_t queue_param; diff --git a/platform/linux-generic/odp_classification.c b/platform/linux-generic/odp_classification.c index f1291ddcd..2ff06d734 100644 --- a/platform/linux-generic/odp_classification.c +++ b/platform/linux-generic/odp_classification.c @@ -137,7 +137,9 @@ void odp_cls_cos_param_init(odp_cls_cos_param_t *param) param->queue = ODP_QUEUE_INVALID; param->pool = ODP_POOL_INVALID; +#if ODP_DEPRECATED_API param->drop_policy = ODP_COS_DROP_NEVER; +#endif param->num_queue = 1; param->vector.enable = false; odp_queue_param_init(¶m->queue_param); @@ -234,9 +236,11 @@ static inline void _cls_queue_unwind(uint32_t tbl_index, uint32_t j) odp_cos_t odp_cls_cos_create(const char *name, const odp_cls_cos_param_t *param_in) { +#if ODP_DEPRECATED_API + odp_cls_drop_t drop_policy; +#endif uint32_t i, j; odp_queue_t queue; - odp_cls_drop_t drop_policy; cos_t *cos; uint32_t tbl_index; odp_cls_cos_param_t param = *param_in; @@ -275,7 +279,9 @@ odp_cos_t odp_cls_cos_create(const char *name, const odp_cls_cos_param_t *param_ } } +#if ODP_DEPRECATED_API drop_policy = param.drop_policy; +#endif for (i = 0; i < CLS_COS_MAX_ENTRY; i++) { cos = &cos_tbl->cos_entry[i]; @@ -336,7 +342,9 @@ odp_cos_t odp_cls_cos_create(const char *name, const odp_cls_cos_param_t *param_ cos->pool = param.pool; cos->headroom = 0; cos->valid = 1; +#if ODP_DEPRECATED_API cos->drop_policy = drop_policy; +#endif odp_atomic_init_u32(&cos->num_rule, 0); cos->index = i; cos->vector = param.vector; @@ -493,6 +501,8 @@ uint32_t odp_cls_cos_queues(odp_cos_t cos_id, odp_queue_t queue[], return cos->num_queue; } +#if ODP_DEPRECATED_API + int odp_cos_drop_set(odp_cos_t cos_id, odp_cls_drop_t drop_policy) { cos_t *cos = get_cos_entry(cos_id); @@ -519,6 +529,8 @@ odp_cls_drop_t odp_cos_drop(odp_cos_t cos_id) return cos->drop_policy; } +#endif + int odp_pktio_default_cos_set(odp_pktio_t pktio_in, odp_cos_t default_cos) { pktio_entry_t *entry; |