This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "".
The branch, api-next has been updated via d42ef2c5a01d29a9877e0b487694f66e40c43624 (commit) via a71de69dd1f1defbdc5dc42edb1c8947d82e60fc (commit) from ad59776ed683d4c019aa0db34b901fcb74a8eaa8 (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- commit d42ef2c5a01d29a9877e0b487694f66e40c43624 Author: Bogdan Pricope bogdan.pricope@linaro.org Date: Fri Aug 10 10:45:43 2018 +0300
linux-gen: pktio: implement per queue pktin configuration
Enables advanced usecases where heterogeneous settings are needed on input queues of the same interface.
Signed-off-by: Bogdan Pricope bogdan.pricope@linaro.org Reviewed-by: Petri Savolainen petri.savolainen@linaro.org Signed-off-by: Maxim Uvarov maxim.uvarov@linaro.org
diff --git a/platform/linux-generic/odp_packet_io.c b/platform/linux-generic/odp_packet_io.c index 7759f83e..cb8086af 100644 --- a/platform/linux-generic/odp_packet_io.c +++ b/platform/linux-generic/odp_packet_io.c @@ -1466,15 +1466,23 @@ int odp_pktin_queue_config(odp_pktio_t pktio, odp_queue_param_t queue_param; char name[ODP_QUEUE_NAME_LEN]; int pktio_id = odp_pktio_index(pktio); + odp_pktin_queue_param_ovr_t *queue_param_ovr = NULL; + + if (param->queue_param_ovr) + queue_param_ovr = param->queue_param_ovr + i;
snprintf(name, sizeof(name), "odp-pktin-%i-%i", pktio_id, i);
- if (param->classifier_enable) + if (param->classifier_enable) { odp_queue_param_init(&queue_param); - else + } else { memcpy(&queue_param, ¶m->queue_param, sizeof(odp_queue_param_t)); + if (queue_param_ovr) + queue_param.sched.group = + queue_param_ovr->group; + }
queue_param.type = ODP_QUEUE_TYPE_PLAIN;
commit a71de69dd1f1defbdc5dc42edb1c8947d82e60fc Author: Bogdan Pricope bogdan.pricope@linaro.org Date: Fri Aug 10 10:30:08 2018 +0300
api: pktio: extend odp_pktin_queue_param_t to support per queue configuration
Per queue configuration enables advanced usecases where input queues of the same interface may belong to different scheduler groups.
Signed-off-by: Bogdan Pricope bogdan.pricope@linaro.org Reviewed-by: Petri Savolainen petri.savolainen@linaro.org Signed-off-by: Maxim Uvarov maxim.uvarov@linaro.org
diff --git a/include/odp/api/spec/packet_io.h b/include/odp/api/spec/packet_io.h index a55c2678..d3e1d405 100644 --- a/include/odp/api/spec/packet_io.h +++ b/include/odp/api/spec/packet_io.h @@ -148,6 +148,17 @@ typedef enum odp_pktio_op_mode_t {
} odp_pktio_op_mode_t;
+/** + * Packet input queue parameters override + */ +typedef struct odp_pktin_queue_param_ovr_t { + /** Override for schedule group in odp_schedule_param_t + * + * This parameter is considered only when queue type is + * ODP_QUEUE_TYPE_SCHED. */ + odp_schedule_group_t group; +} odp_pktin_queue_param_ovr_t; + /** * Packet input queue parameters */ @@ -203,6 +214,18 @@ typedef struct odp_pktin_queue_param_t { * value is ignored. */ odp_queue_param_t queue_param;
+ /** Queue parameters override + * + * When the override array is defined, the same parameter value + * in 'queue_param' is ignored and these per queue parameter + * values are used instead. Array elements are used in order + * (i.e. the first queue gets parameters from the first array + * element, etc). + * Must point to an array of num_queues elements or NULL to + * disable queue parameters override. The default value is + * NULL. + */ + odp_pktin_queue_param_ovr_t *queue_param_ovr; } odp_pktin_queue_param_t;
/**
-----------------------------------------------------------------------
Summary of changes: include/odp/api/spec/packet_io.h | 23 +++++++++++++++++++++++ platform/linux-generic/odp_packet_io.c | 12 ++++++++++-- 2 files changed, 33 insertions(+), 2 deletions(-)
hooks/post-receive