History log of /dpdk/app/test/test_graph.c (Results 1 – 15 of 15)
Revision Date Author Comments
# d5c8b6bb 18-Jun-2024 Robin Jarry <rjarry@redhat.com>

graph: fix ID collisions

The graph id is determined based on a global variable that is
incremented every time a graph is created, and decremented every time
a graph is destroyed. This only works if

graph: fix ID collisions

The graph id is determined based on a global variable that is
incremented every time a graph is created, and decremented every time
a graph is destroyed. This only works if graphs are destroyed in the
reverse order in which they have been created.

The following code produces duplicate graph IDs which can lead to
use-after-free bugs and other undefined behaviours:

a = rte_graph_create(...); // id=0 graph_id=1
b = rte_graph_create(...); // id=1 graph_id=2
rte_graph_destroy(a); // graph_id=1
c = rte_graph_create(...); // id=1 graph_id=2 (duplicate with b)
rte_graph_destroy(c); // frees memory still used by b

Remove the global counter. Make sure that the graph list is always
ordered by increasing graph ids. When creating a new graph, pick a free
id which is not allocated.

Update unit tests to ensure it works as expected.

Fixes: a91fecc19c5c ("graph: implement create and destroy")
Cc: stable@dpdk.org

Signed-off-by: Robin Jarry <rjarry@redhat.com>
Acked-by: Kiran Kumar K <kirankumark@marvell.com>

show more ...


# 08966fe7 13-Feb-2024 Tyler Retzlaff <roretzla@linux.microsoft.com>

use C11 alignof

Replace use of __alignof__(e) (resp. __alignof__(T) with C11
alignof(typeof(e)) (resp. alignof(T)) to improve portability
between toolchains.

Signed-off-by: Tyler Retzlaff <roretzla

use C11 alignof

Replace use of __alignof__(e) (resp. __alignof__(T) with C11
alignof(typeof(e)) (resp. alignof(T)) to improve portability
between toolchains.

Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com>
Acked-by: Morten Brørup <mb@smartsharesystems.com>
Acked-by: Chengwen Feng <fengchengwen@huawei.com>
Acked-by: Anoob Joseph <anoobj@marvell.com>
Acked-by: Volodymyr Fialko <vfialko@marvell.com>
Acked-by: Akhil Goyal <gakhil@marvell.com>
Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>

show more ...


# c381cd34 21-Jul-2023 Zhirun Yan <zhirun.yan@intel.com>

test/graph: fix unused return value

Return value stored in "ret" but it may be overwritten before use.
Add goto to return when meet an error. Issue reported by coverity scan.

Coverity issue: 395532

test/graph: fix unused return value

Return value stored in "ret" but it may be overwritten before use.
Add goto to return when meet an error. Issue reported by coverity scan.

Coverity issue: 395532
Fixes: 15f483feec65 ("graph: fix model check in core binding")

Signed-off-by: Zhirun Yan <zhirun.yan@intel.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>

show more ...


# d83fb967 15-Sep-2023 David Marchand <david.marchand@redhat.com>

test: fix fast, perf and driver testsuites

Some tests (15 fast-tests, 2 perf tests and 7 driver tests) have been
lost in the recent changes reworking test suites.

The following method was used to i

test: fix fast, perf and driver testsuites

Some tests (15 fast-tests, 2 perf tests and 7 driver tests) have been
lost in the recent changes reworking test suites.

The following method was used to identify them:

$ git grep -h fast_tests.+= e0a8442ccd -- app/test/meson.build
fast_tests += [['graph_autotest', true, true]]
fast_tests += [['node_list_dump', true, true]]
fast_tests += [['metrics_autotest', true, true]]
fast_tests += [['telemetry_json_autotest', true, true]]
fast_tests += [['telemetry_data_autotest', true, true]]
fast_tests += [['table_autotest', true, true]]
fast_tests += [['ring_pmd_autotest', true, true]]
fast_tests += [['event_eth_tx_adapter_autotest', false, true]]
fast_tests += [['bitratestats_autotest', true, true]]
fast_tests += [['latencystats_autotest', true, true]]
fast_tests += [['pdump_autotest', true, false]]
fast_tests += [['vdev_autotest', true, true]]
fast_tests += [['rawdev_autotest', true, true]]
fast_tests += [['pdcp_autotest', false, true]]
fast_tests += [['compressdev_autotest', false, true]]

$ git grep -h perf_test_names.+= e0a8442ccd -- app/test/meson.build
perf_test_names += 'graph_perf_autotest'
perf_test_names += 'ring_pmd_perf_autotest'

$ git grep -hA4 driver_test_names.+= e0a8442ccd -- app/test/meson.build
driver_test_names += [
'cryptodev_openssl_asym_autotest',
'eventdev_selftest_octeontx',
'eventdev_selftest_sw',
]

--
driver_test_names += ['link_bonding_autotest', 'link_bonding_rssconf_autotest']
if dpdk_conf.has('RTE_NET_RING')
test_sources += 'test_link_bonding_mode4.c'
driver_test_names += 'link_bonding_mode4_autotest'
endif
endif
if dpdk_conf.has('RTE_LIB_EVENTDEV') and dpdk_conf.has('RTE_NET_RING')
test_deps += 'net_ring'
--
driver_test_names += 'cryptodev_scheduler_autotest'
test_deps += 'crypto_scheduler'
endif

foreach d:test_deps

Fixes: e0a8442ccd15 ("test: tag tests type")

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Morten Brørup <mb@smartsharesystems.com>

show more ...


# 15f483fe 10-Jul-2023 Zhirun Yan <zhirun.yan@intel.com>

graph: fix model check in core binding

This function is used for mcore dispatch model only,
correct the check to make sure it is the expected model.

Fix missing worker model selection by invoking
r

graph: fix model check in core binding

This function is used for mcore dispatch model only,
correct the check to make sure it is the expected model.

Fix missing worker model selection by invoking
rte_graph_worker_model_set(RTE_GRAPH_MODEL_MCORE_DISPATCH)
in test_graph_model_mcore_dispatch_core_bind_unbind() routine.

Also, updated missing release notes for new mcore dispatch model addition
and sample l3fwd-graph update.

Fixes: ecb22a294980 ("graph: introduce graph bind unbind API")

Signed-off-by: Zhirun Yan <zhirun.yan@intel.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>

show more ...


# a7f73e53 10-Jul-2023 Zhirun Yan <zhirun.yan@intel.com>

test/graph: fix parameters of clone function

rte_graph_clone() should use a valid param rather than NULL pointer as
it needs the param for alloc work queue memory for mcore dispatch model
in graph_s

test/graph: fix parameters of clone function

rte_graph_clone() should use a valid param rather than NULL pointer as
it needs the param for alloc work queue memory for mcore dispatch model
in graph_sched_wq_create().

Fixes: 67e2303cd823 ("test/graph: add functional tests for mcore dispatch model")

Signed-off-by: Zhirun Yan <zhirun.yan@intel.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>

show more ...


# 67e2303c 14-Jun-2023 Zhirun Yan <zhirun.yan@intel.com>

test/graph: add functional tests for mcore dispatch model

Add functional test for mcore dispatch model including graph clone,
graph model set/get, node worker affinity, graph worker binding/unbindin

test/graph: add functional tests for mcore dispatch model

Add functional test for mcore dispatch model including graph clone,
graph model set/get, node worker affinity, graph worker binding/unbinding.

Signed-off-by: Haiyue Wang <haiyue.wang@intel.com>
Signed-off-by: Cunming Liang <cunming.liang@intel.com>
Signed-off-by: Zhirun Yan <zhirun.yan@intel.com>
Acked-by: Pavan Nikhilesh <pbhagavatula@marvell.com>

show more ...


# a2bc0584 14-Jun-2023 Zhirun Yan <zhirun.yan@intel.com>

graph: split graph worker into common and default model

To support multiple graph worker model, split graph into common
and default. Naming the current walk function as rte_graph_model_rtc
cause the

graph: split graph worker into common and default model

To support multiple graph worker model, split graph into common
and default. Naming the current walk function as rte_graph_model_rtc
cause the default model is RTC(Run-to-completion).

Signed-off-by: Haiyue Wang <haiyue.wang@intel.com>
Signed-off-by: Cunming Liang <cunming.liang@intel.com>
Signed-off-by: Zhirun Yan <zhirun.yan@intel.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>

show more ...


# 421073c0 14-Jun-2023 Zhirun Yan <zhirun.yan@intel.com>

graph: rename rte graph worker header as common

Rename rte_graph_work.h to rte_graph_work_common.h for supporting
multiple graph worker model.

Signed-off-by: Haiyue Wang <haiyue.wang@intel.com>
Sig

graph: rename rte graph worker header as common

Rename rte_graph_work.h to rte_graph_work_common.h for supporting
multiple graph worker model.

Signed-off-by: Haiyue Wang <haiyue.wang@intel.com>
Signed-off-by: Cunming Liang <cunming.liang@intel.com>
Signed-off-by: Zhirun Yan <zhirun.yan@intel.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>

show more ...


# 6eccb0c9 07-Mar-2022 Haiyue Wang <haiyue.wang@intel.com>

graph: remove useless duplicate name check

The node clone API parameter 'name' is the new node's postfix name, not
the final node name, so it makes no sense to check it. And the new name
will be che

graph: remove useless duplicate name check

The node clone API parameter 'name' is the new node's postfix name, not
the final node name, so it makes no sense to check it. And the new name
will be checked duplicate when calling API '__rte_node_register'.

And update the test case to call clone API twice to check the real name
duplicate.

Signed-off-by: Haiyue Wang <haiyue.wang@intel.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>

show more ...


# 3c60274c 26-Jan-2022 Jie Zhou <jizh@linux.microsoft.com>

test: skip unsupported tests on Windows

Skip tests which are not yet supported for Windows:
- The libraries that tests depend on are not enabled on Windows yet
- The tests can compile but with issue

test: skip unsupported tests on Windows

Skip tests which are not yet supported for Windows:
- The libraries that tests depend on are not enabled on Windows yet
- The tests can compile but with issue still under investigation
* test_func_reentrancy:
Windows EAL has no protection against repeated calls.
* test_lcores:
Execution enters an infinite loops, requires investigation.
* test_rcu_qsbr_perf:
Execution hangs on Windows, requires investigation.

Signed-off-by: Jie Zhou <jizh@linux.microsoft.com>
Signed-off-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>
Acked-by: Tyler Retzlaff <roretzla@linux.microsoft.com>

show more ...


# e2e01583 26-Oct-2020 Thomas Monjalon <thomas@monjalon.net>

test/graph: switch user data to dynamic mbuf field

The test used the deprecated mbuf field udata64.
It is moved to a dynamic field in order to allow removal of udata64.

Signed-off-by: Thomas Monjal

test/graph: switch user data to dynamic mbuf field

The test used the deprecated mbuf field udata64.
It is moved to a dynamic field in order to allow removal of udata64.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>

show more ...


# c5a56c58 15-May-2020 Kiran Kumar K <kirankumark@marvell.com>

test/graph: fix memory leaks in functional tests

Fix memory leaks reported by Coverity.

Fixes: 6b89650418 ("test/graph: add functional tests")

Signed-off-by: Kiran Kumar K <kirankumark@marvell.com

test/graph: fix memory leaks in functional tests

Fix memory leaks reported by Coverity.

Fixes: 6b89650418 ("test/graph: add functional tests")

Signed-off-by: Kiran Kumar K <kirankumark@marvell.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>

show more ...


# 9330521c 15-May-2020 Kiran Kumar K <kirankumark@marvell.com>

test/graph: use better randomness

Fix weak crypto issues reported by Coverity.

Fixes: 6b89650418 ("test/graph: add functional tests")

Signed-off-by: Kiran Kumar K <kirankumark@marvell.com>
Acked-b

test/graph: use better randomness

Fix weak crypto issues reported by Coverity.

Fixes: 6b89650418 ("test/graph: add functional tests")

Signed-off-by: Kiran Kumar K <kirankumark@marvell.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>

show more ...


# 6b896504 11-Apr-2020 Kiran Kumar K <kirankumark@marvell.com>

test/graph: add functional tests

Adding the unit test to test the functionality of node and graph APIs.
Testing includes registering a node, cloning a node, creating a graph,
perform graph walk, col

test/graph: add functional tests

Adding the unit test to test the functionality of node and graph APIs.
Testing includes registering a node, cloning a node, creating a graph,
perform graph walk, collecting stats and all node and graph debug APIs.

example command to test:
echo "graph_autotest" | sudo ./build/app/test/dpdk-test -c 0x30

Signed-off-by: Kiran Kumar K <kirankumark@marvell.com>
Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>

show more ...