* [PATCH v3] eventdev/eth_tx: fix runtime parameter test [not found] <20230502055711.1133134-1-s.v.naga.harish.k@intel.com> @ 2023-05-17 10:35 ` Naga Harish K S V 2023-05-17 15:10 ` Jerin Jacob 0 siblings, 1 reply; 2+ messages in thread From: Naga Harish K S V @ 2023-05-17 10:35 UTC (permalink / raw) To: jerinj; +Cc: dev, jay.jayatheerthan, stable TX adapter capability check logic is simplified. The UT has been updated to skip the test, if the API to set runtime parameters is not supported. Fixes: 1d176c7add08 ("eventdev/eth_tx: support runtime set/get parameters") Cc: stable@dpdk.org Signed-off-by: Naga Harish K S V <s.v.naga.harish.k@intel.com> --- v3: * address review comments in commit message v2: * update tx_adapter unit test --- app/test/test_event_eth_tx_adapter.c | 11 ++++++--- lib/eventdev/rte_event_eth_tx_adapter.c | 33 +++++-------------------- 2 files changed, 14 insertions(+), 30 deletions(-) diff --git a/app/test/test_event_eth_tx_adapter.c b/app/test/test_event_eth_tx_adapter.c index 4e1d821bf9..616c972ac0 100644 --- a/app/test/test_event_eth_tx_adapter.c +++ b/app/test/test_event_eth_tx_adapter.c @@ -800,13 +800,17 @@ tx_adapter_queue_start_stop(void) static int tx_adapter_set_get_params(void) { - int err; + int err, rc; struct rte_event_eth_tx_adapter_runtime_params in_params; struct rte_event_eth_tx_adapter_runtime_params out_params; err = rte_event_eth_tx_adapter_queue_add(TEST_INST_ID, TEST_ETHDEV_ID, 0); + if (err == -ENOTSUP) { + rc = TEST_SKIPPED; + goto skip; + } TEST_ASSERT(err == 0, "Expected 0 got %d", err); err = rte_event_eth_tx_adapter_runtime_params_init(&in_params); @@ -916,13 +920,14 @@ tx_adapter_set_get_params(void) TEST_ASSERT(in_params.flush_threshold == out_params.flush_threshold, "Expected %u got %u", in_params.flush_threshold, out_params.flush_threshold); - + rc = TEST_SUCCESS; +skip: err = rte_event_eth_tx_adapter_queue_del(TEST_INST_ID, TEST_ETHDEV_ID, 0); TEST_ASSERT(err == 0, "Expected 0 got %d", err); - return TEST_SUCCESS; + return rc; } static int diff --git a/lib/eventdev/rte_event_eth_tx_adapter.c b/lib/eventdev/rte_event_eth_tx_adapter.c index 131e11e01d..360d5caf6a 100644 --- a/lib/eventdev/rte_event_eth_tx_adapter.c +++ b/lib/eventdev/rte_event_eth_tx_adapter.c @@ -1310,36 +1310,15 @@ rte_event_eth_tx_adapter_runtime_params_init( } static int -txa_caps_check(uint8_t id, struct txa_service_data *txa) +txa_caps_check(struct txa_service_data *txa) { - uint32_t caps = 0; - struct rte_eth_dev *eth_dev = NULL; - struct txa_service_ethdev *tdi; - int i; - if (!txa->dev_count) return -EINVAL; - /* The eth_dev used is always the same type. - * Hence first valid eth_dev is taken. - */ - for (i = 0; i < txa->dev_count; i++) { - tdi = &txa->txa_ethdev[i]; - if (tdi->nb_queues) { - eth_dev = tdi->dev; - break; - } - } - if (eth_dev == NULL) - return -EINVAL; - - if (txa_dev_caps_get(id)) - txa_dev_caps_get(id)(txa_evdev(id), eth_dev, &caps); - - if (caps & RTE_EVENT_ETH_TX_ADAPTER_CAP_INTERNAL_PORT) - return -ENOTSUP; + if (txa->service_id != TXA_INVALID_SERVICE_ID) + return 0; - return 0; + return -ENOTSUP; } int @@ -1361,7 +1340,7 @@ rte_event_eth_tx_adapter_runtime_params_set(uint8_t id, if (txa == NULL) return -EINVAL; - ret = txa_caps_check(id, txa); + ret = txa_caps_check(txa); if (ret) return ret; @@ -1392,7 +1371,7 @@ rte_event_eth_tx_adapter_runtime_params_get(uint8_t id, if (txa == NULL) return -EINVAL; - ret = txa_caps_check(id, txa); + ret = txa_caps_check(txa); if (ret) return ret; -- 2.23.0 ^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH v3] eventdev/eth_tx: fix runtime parameter test 2023-05-17 10:35 ` [PATCH v3] eventdev/eth_tx: fix runtime parameter test Naga Harish K S V @ 2023-05-17 15:10 ` Jerin Jacob 0 siblings, 0 replies; 2+ messages in thread From: Jerin Jacob @ 2023-05-17 15:10 UTC (permalink / raw) To: Naga Harish K S V; +Cc: jerinj, dev, jay.jayatheerthan, stable On Wed, May 17, 2023 at 4:06 PM Naga Harish K S V <s.v.naga.harish.k@intel.com> wrote: > > TX adapter capability check logic is simplified. > The UT has been updated to skip the test, if the API > to set runtime parameters is not supported. > > Fixes: 1d176c7add08 ("eventdev/eth_tx: support runtime set/get parameters") > Cc: stable@dpdk.org > > Signed-off-by: Naga Harish K S V <s.v.naga.harish.k@intel.com> > --- > v3: > * address review comments in commit message Applied to dpdk-next-net-eventdev/for-main. Thanks > v2: > * update tx_adapter unit test > --- > app/test/test_event_eth_tx_adapter.c | 11 ++++++--- > lib/eventdev/rte_event_eth_tx_adapter.c | 33 +++++-------------------- > 2 files changed, 14 insertions(+), 30 deletions(-) > > diff --git a/app/test/test_event_eth_tx_adapter.c b/app/test/test_event_eth_tx_adapter.c > index 4e1d821bf9..616c972ac0 100644 > --- a/app/test/test_event_eth_tx_adapter.c > +++ b/app/test/test_event_eth_tx_adapter.c > @@ -800,13 +800,17 @@ tx_adapter_queue_start_stop(void) > static int > tx_adapter_set_get_params(void) > { > - int err; > + int err, rc; > struct rte_event_eth_tx_adapter_runtime_params in_params; > struct rte_event_eth_tx_adapter_runtime_params out_params; > > err = rte_event_eth_tx_adapter_queue_add(TEST_INST_ID, > TEST_ETHDEV_ID, > 0); > + if (err == -ENOTSUP) { > + rc = TEST_SKIPPED; > + goto skip; > + } > TEST_ASSERT(err == 0, "Expected 0 got %d", err); > > err = rte_event_eth_tx_adapter_runtime_params_init(&in_params); > @@ -916,13 +920,14 @@ tx_adapter_set_get_params(void) > TEST_ASSERT(in_params.flush_threshold == out_params.flush_threshold, > "Expected %u got %u", > in_params.flush_threshold, out_params.flush_threshold); > - > + rc = TEST_SUCCESS; > +skip: > err = rte_event_eth_tx_adapter_queue_del(TEST_INST_ID, > TEST_ETHDEV_ID, > 0); > TEST_ASSERT(err == 0, "Expected 0 got %d", err); > > - return TEST_SUCCESS; > + return rc; > } > > static int > diff --git a/lib/eventdev/rte_event_eth_tx_adapter.c b/lib/eventdev/rte_event_eth_tx_adapter.c > index 131e11e01d..360d5caf6a 100644 > --- a/lib/eventdev/rte_event_eth_tx_adapter.c > +++ b/lib/eventdev/rte_event_eth_tx_adapter.c > @@ -1310,36 +1310,15 @@ rte_event_eth_tx_adapter_runtime_params_init( > } > > static int > -txa_caps_check(uint8_t id, struct txa_service_data *txa) > +txa_caps_check(struct txa_service_data *txa) > { > - uint32_t caps = 0; > - struct rte_eth_dev *eth_dev = NULL; > - struct txa_service_ethdev *tdi; > - int i; > - > if (!txa->dev_count) > return -EINVAL; > > - /* The eth_dev used is always the same type. > - * Hence first valid eth_dev is taken. > - */ > - for (i = 0; i < txa->dev_count; i++) { > - tdi = &txa->txa_ethdev[i]; > - if (tdi->nb_queues) { > - eth_dev = tdi->dev; > - break; > - } > - } > - if (eth_dev == NULL) > - return -EINVAL; > - > - if (txa_dev_caps_get(id)) > - txa_dev_caps_get(id)(txa_evdev(id), eth_dev, &caps); > - > - if (caps & RTE_EVENT_ETH_TX_ADAPTER_CAP_INTERNAL_PORT) > - return -ENOTSUP; > + if (txa->service_id != TXA_INVALID_SERVICE_ID) > + return 0; > > - return 0; > + return -ENOTSUP; > } > > int > @@ -1361,7 +1340,7 @@ rte_event_eth_tx_adapter_runtime_params_set(uint8_t id, > if (txa == NULL) > return -EINVAL; > > - ret = txa_caps_check(id, txa); > + ret = txa_caps_check(txa); > if (ret) > return ret; > > @@ -1392,7 +1371,7 @@ rte_event_eth_tx_adapter_runtime_params_get(uint8_t id, > if (txa == NULL) > return -EINVAL; > > - ret = txa_caps_check(id, txa); > + ret = txa_caps_check(txa); > if (ret) > return ret; > > -- > 2.23.0 > ^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2023-05-17 15:10 UTC | newest] Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <20230502055711.1133134-1-s.v.naga.harish.k@intel.com> 2023-05-17 10:35 ` [PATCH v3] eventdev/eth_tx: fix runtime parameter test Naga Harish K S V 2023-05-17 15:10 ` Jerin Jacob
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).