[dpdk-dev] [PATCH v4 03/11] examples/l3fwd: add event device configuration

2020-01-22 Thread pbhagavatula
From: Pavan Nikhilesh Add event device configuration based on the capabilities of the probed event device. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd_event.c | 3 + examples/l3fwd/l3fwd_event.h | 36 ++ examples/l3fwd/l3fwd_event_generic.c

[dpdk-dev] [PATCH v4 02/11] examples/l3fwd: split pipelines based on capability

2020-01-22 Thread pbhagavatula
From: Sunil Kumar Kori Add infra to split eventdev framework based on event Tx adapter capability. If event Tx adapter has internal port capability then we use `rte_event_eth_tx_adapter_enqueue` to transmitting packets else we use a SINGLE_LINK event queue to enqueue packets to a service core whi

[dpdk-dev] [PATCH v4 01/11] examples/l3fwd: add framework for event device

2020-01-22 Thread pbhagavatula
From: Sunil Kumar Kori Add framework to enable event device as a producer of packets. To switch between event mode and poll mode the following options have been added: `--mode="eventdev"` or `--mode="poll"` Allow the user to select the schedule type to be either RTE_SCHED_TYPE_ORDERED, RT

[dpdk-dev] [PATCH v4 04/11] examples/l3fwd: add ethdev setup based on eventdev

2020-01-22 Thread pbhagavatula
From: Sunil Kumar Kori Add ethernet port Rx/Tx queue setup for event device which are later used for setting up event eth Rx/Tx adapters. Signed-off-by: Sunil Kumar Kori Signed-off-by: Nipun Gupta --- examples/l3fwd/l3fwd.h | 10 +++ examples/l3fwd/l3fwd_event.c | 138 +

[dpdk-dev] [PATCH v4 00/11] example/l3fwd: introduce event device support

2020-01-22 Thread pbhagavatula
From: Pavan Nikhilesh This patchset adds support for event mode in l3fwd. The poll mode is still the default mode of operation. The following new command line parameters are added: --mode: Dictates the mode of operation either poll or event. If unset then by default poll mode is used.

[dpdk-dev] [PATCH v4 06/11] examples/l3fwd: add event eth Rx/Tx adapter setup

2020-01-22 Thread pbhagavatula
From: Pavan Nikhilesh Add event eth Rx/Tx adapter setup for both generic and internal port event device pipelines. Signed-off-by: Sunil Kumar Kori Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd_event.c | 3 + examples/l3fwd/l3fwd_event.h | 1 + example

[dpdk-dev] [PATCH v4 07/11] examples/l3fwd: add service core setup based on caps

2020-01-22 Thread pbhagavatula
From: Pavan Nikhilesh Add service core setup when eventdev and Rx/Tx adapter don't have internal port capability. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd_event.c | 6 ++ examples/l3fwd/main.c| 188 +++ 2 files changed, 150 insertions(+)

[dpdk-dev] [PATCH v4 05/11] examples/l3fwd: add event port and queue setup

2020-01-22 Thread pbhagavatula
From: Sunil Kumar Kori Add event device queue and port setup based on event eth Tx adapter capabilities. Signed-off-by: Sunil Kumar Kori --- examples/l3fwd/l3fwd_event.c | 28 +- examples/l3fwd/l3fwd_event.h | 1 + examples/l3fwd/l3fwd_event_generic.c |

[dpdk-dev] [PATCH v4 09/11] examples/l3fwd: add event em main loop

2020-01-22 Thread pbhagavatula
From: Pavan Nikhilesh Add em main loop for handling events based on capabilities of the event device. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd.h | 10 ++ examples/l3fwd/l3fwd_em.c| 177 +++ examples/l3fwd/l3fwd_em.h|

[dpdk-dev] [PATCH v4 08/11] examples/l3fwd: add event lpm main loop

2020-01-22 Thread pbhagavatula
From: Pavan Nikhilesh Add lpm main loop for handling events based on capabilities of the event device. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd.h | 9 ++ examples/l3fwd/l3fwd_event.c | 9 ++ examples/l3fwd/l3fwd_event.h | 5 + examples/l3fwd/l3fwd_lpm.c | 203 +

[dpdk-dev] [PATCH v4 10/11] examples/l3fwd: add graceful teardown for eventdevice

2020-01-22 Thread pbhagavatula
From: Pavan Nikhilesh Add graceful teardown that addresses both event mode and poll mode. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/main.c | 50 +-- 1 file changed, 34 insertions(+), 16 deletions(-) diff --git a/examples/l3fwd/main.c b/examples/

[dpdk-dev] [PATCH v4 11/11] doc: update l3fwd user guide to support eventdev

2020-01-22 Thread pbhagavatula
From: Pavan Nikhilesh Update l3fwd user guide to include event device related information. Signed-off-by: Pavan Nikhilesh --- doc/guides/sample_app_ug/l3_forward.rst | 79 +++-- 1 file changed, 73 insertions(+), 6 deletions(-) diff --git a/doc/guides/sample_app_ug/l3_forwa

[dpdk-dev] [PATCH v5 00/11] example/l3fwd: introduce event device support

2020-01-23 Thread pbhagavatula
From: Pavan Nikhilesh This patchset adds support for event mode in l3fwd. The poll mode is still the default mode of operation. The following new command line parameters are added: --mode: Dictates the mode of operation either poll or event. If unset then by default poll mode is used.

[dpdk-dev] [PATCH v5 06/11] examples/l3fwd: add event eth Rx/Tx adapter setup

2020-01-23 Thread pbhagavatula
From: Pavan Nikhilesh Add event eth Rx/Tx adapter setup for both generic and internal port event device pipelines. Signed-off-by: Sunil Kumar Kori Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd_event.c | 3 + examples/l3fwd/l3fwd_event.h | 1 + example

[dpdk-dev] [PATCH v5 05/11] examples/l3fwd: add event port and queue setup

2020-01-23 Thread pbhagavatula
From: Sunil Kumar Kori Add event device queue and port setup based on event eth Tx adapter capabilities. Signed-off-by: Sunil Kumar Kori --- examples/l3fwd/l3fwd_event.c | 28 +- examples/l3fwd/l3fwd_event.h | 1 + examples/l3fwd/l3fwd_event_generic.c |

[dpdk-dev] [PATCH v5 01/11] examples/l3fwd: add framework for event device

2020-01-23 Thread pbhagavatula
From: Sunil Kumar Kori Add framework to enable event device as a producer of packets. To switch between event mode and poll mode the following options have been added: `--mode="eventdev"` or `--mode="poll"` Allow the user to select the schedule type to be either RTE_SCHED_TYPE_ORDERED, RT

[dpdk-dev] [PATCH v5 03/11] examples/l3fwd: add event device configuration

2020-01-23 Thread pbhagavatula
From: Pavan Nikhilesh Add event device configuration based on the capabilities of the probed event device. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd_event.c | 3 + examples/l3fwd/l3fwd_event.h | 36 ++ examples/l3fwd/l3fwd_event_generic.c

[dpdk-dev] [PATCH v5 02/11] examples/l3fwd: split pipelines based on capability

2020-01-23 Thread pbhagavatula
From: Sunil Kumar Kori Add infra to split eventdev framework based on event Tx adapter capability. If event Tx adapter has internal port capability then we use `rte_event_eth_tx_adapter_enqueue` to transmitting packets else we use a SINGLE_LINK event queue to enqueue packets to a service core whi

[dpdk-dev] [PATCH v5 04/11] examples/l3fwd: add ethdev setup based on eventdev

2020-01-23 Thread pbhagavatula
From: Sunil Kumar Kori Add ethernet port Rx/Tx queue setup for event device which are later used for setting up event eth Rx/Tx adapters. Signed-off-by: Sunil Kumar Kori Signed-off-by: Nipun Gupta --- examples/l3fwd/l3fwd.h | 10 +++ examples/l3fwd/l3fwd_event.c | 138 +

[dpdk-dev] [PATCH v5 07/11] examples/l3fwd: add service core setup based on caps

2020-01-23 Thread pbhagavatula
From: Pavan Nikhilesh Add service core setup when eventdev and Rx/Tx adapter don't have internal port capability. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd_event.c | 6 ++ examples/l3fwd/main.c| 188 +++ 2 files changed, 150 insertions(+)

[dpdk-dev] [PATCH v5 08/11] examples/l3fwd: add event lpm main loop

2020-01-23 Thread pbhagavatula
From: Pavan Nikhilesh Add lpm main loop for handling events based on capabilities of the event device. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd.h | 9 ++ examples/l3fwd/l3fwd_event.c | 9 ++ examples/l3fwd/l3fwd_event.h | 5 + examples/l3fwd/l3fwd_lpm.c | 203 +

[dpdk-dev] [PATCH v5 09/11] examples/l3fwd: add event em main loop

2020-01-23 Thread pbhagavatula
From: Pavan Nikhilesh Add em main loop for handling events based on capabilities of the event device. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd.h | 10 ++ examples/l3fwd/l3fwd_em.c| 177 +++ examples/l3fwd/l3fwd_em.h|

[dpdk-dev] [PATCH v5 11/11] doc: update l3fwd user guide to support eventdev

2020-01-23 Thread pbhagavatula
From: Pavan Nikhilesh Update l3fwd user guide to include event device related information. Update release notes and MAINTAINERS file. Signed-off-by: Pavan Nikhilesh --- MAINTAINERS | 1 + doc/guides/rel_notes/release_20_02.rst | 5 ++ doc/guides/sample_app_ug/l3_

[dpdk-dev] [PATCH v5 10/11] examples/l3fwd: add graceful teardown for eventdevice

2020-01-23 Thread pbhagavatula
From: Pavan Nikhilesh Add graceful teardown that addresses both event mode and poll mode. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/main.c | 50 +-- 1 file changed, 34 insertions(+), 16 deletions(-) diff --git a/examples/l3fwd/main.c b/examples/

[dpdk-dev] [PATCH v3 1/3] app: use RTE_DIM to calculate array size

2020-01-23 Thread pbhagavatula
From: Pavan Nikhilesh Use RTE_DIM macro to calculate array size Suggested-by: David Marchand Signed-off-by: Pavan Nikhilesh --- v3 Changes: -- - remove variables that are used only once.(David) - rebase on ToT. - flush out rest of instances not using RTE_DIM. v2 Changes: --

[dpdk-dev] [PATCH v3 3/3] lib: use RTE_DIM to calculate array size

2020-01-23 Thread pbhagavatula
From: Pavan Nikhilesh use RTE_DIM to calculate array size. Suggested-by: David Marchand Signed-off-by: Pavan Nikhilesh Acked-by: Cristian Dumitrescu --- lib/librte_ethdev/rte_ethdev.c | 8 +++- lib/librte_ip_frag/ip_frag_internal.c| 5 ++--- lib/librte_port/

[dpdk-dev] [PATCH v3 2/3] examples: use RTE_DIM to calculate array size

2020-01-23 Thread pbhagavatula
From: Pavan Nikhilesh use RTE_DIM macro to calculate array size. Suggested-by: David Marchand Signed-off-by: Pavan Nikhilesh --- examples/ip_pipeline/parser.c | 2 +- examples/ipv4_multicast/main.c | 6 +- examples/l3fwd-power/main.c| 18 -- examples/l3fwd/l3fwd_em.

[dpdk-dev] [PATCH (v20.11) 1/2] eventdev: reserve space in config structs for extension

2020-07-01 Thread pbhagavatula
From: Pavan Nikhilesh Reserve space in event device configuration structures as increasing their size would break ABI for some applications. In order to allow smooth addition of features without breaking ABI compatibility, reserve some space. Signed-off-by: Pavan Nikhilesh --- lib/librte_event

[dpdk-dev] [PATCH (v20.11) 2/2] eventdev: reserve space in timer structs for extension

2020-07-01 Thread pbhagavatula
From: Pavan Nikhilesh The struct rte_event_timer_adapter and rte_event_timer_adapter_data are supposed to be used internally only, but there is a chance that increasing their size would break ABI for some applications. In order to allow smooth addition of features without breaking ABI compatibili

[dpdk-dev] [PATCH v4] mempool/octeontx2: add devargs to lock ctx in cache

2020-04-22 Thread pbhagavatula
From: Pavan Nikhilesh Add device arguments to lock NPA aura and pool contexts in NDC cache. The device args take hexadecimal bitmask where each bit represent the corresponding aura/pool id. Example: -w 0002:02:00.0,npa_lock_mask=0xf // Lock first 4 aura/pool ctx Signed-off-by: Pavan Nikh

[dpdk-dev] [PATCH v3] examples/l2fwd: add cmdline option for forwarding port info

2020-04-27 Thread pbhagavatula
From: Vamsi Attunuru Current l2fwd application statically configures adjacent ports as destination ports for forwarding the traffic. Add a portmap option to pass the forwarding port pair mapping which allows the user to configure forwarding port mapping. If no portmap argument is specified, des

[dpdk-dev] [PATCH] eventdev: fix device probe and remove for secondary process

2020-04-27 Thread pbhagavatula
From: Pavan Nikhilesh When probing event device in secondary process skip reinitializing the device data structure as it is already done in primary process. When removing event device in secondary process skip closing the event device as it should be done by primary process. Fixes: 322d0345c2bc

[dpdk-dev] [PATCH v4] examples/l2fwd: add cmdline option for forwarding port info

2020-04-27 Thread pbhagavatula
From: Vamsi Attunuru Current l2fwd application statically configures adjacent ports as destination ports for forwarding the traffic. Add a portmap option to pass the forwarding port pair mapping which allows the user to configure forwarding port mapping. If no portmap argument is specified, des

[dpdk-dev] [RFC] hash: unify crc32 API header for x86 and ARM

2020-04-29 Thread pbhagavatula
From: Pavan Nikhilesh Merge crc32 hash calculation public API headers for x86 and ARM, split implementations of x86 and ARM into their respective private headers. This reduces the ifdef code clutter while keeping current ABI intact. Although we install `rte_crc_arm64.h` it is not used in any of

[dpdk-dev] [PATCH] common/octeontx: fix GCC 9.1 ABI break

2020-05-02 Thread pbhagavatula
From: Pavan Nikhilesh GCC 9.1 fixes a bug with passing bitfields as pass by value in function parameters and generates a warning for the same as below: drivers/common/octeontx/octeontx_mbox.c:282:1: note: parameter passing for argument of type ‘struct mbox_intf_ver’ changed in GCC 9.1 Fix the w

[dpdk-dev] [PATCH 1/2] common/octeontx2: move internal symbols to INTERNAL section

2020-05-11 Thread pbhagavatula
From: Pavan Nikhilesh Move the internal symbols to INTERNAL sections so that any change in them is not reported as ABI breakage. Signed-off-by: Pavan Nikhilesh --- drivers/common/octeontx2/otx2_common.h | 8 drivers/common/octeontx2/otx2_dev.h | 3 +++ drivers

[dpdk-dev] [PATCH 2/2] mempool/octeontx2: move internal symbols to INTERNAL section

2020-05-11 Thread pbhagavatula
From: Pavan Nikhilesh Move the internal symbols to INTERNAL sections so that any change in them is not reported as ABI breakage. Signed-off-by: Pavan Nikhilesh --- drivers/mempool/octeontx2/otx2_mempool.h| 2 ++ drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map |

[dpdk-dev] [PATCH v5] mempool/octeontx2: add devargs to lock ctx in cache

2020-05-11 Thread pbhagavatula
From: Pavan Nikhilesh Add device arguments to lock NPA aura and pool contexts in NDC cache. The device args take hexadecimal bitmask where each bit represent the corresponding aura/pool id. Example: -w 0002:02:00.0,npa_lock_mask=0xf // Lock first 4 aura/pool ctx Signed-off-by: Pavan Nikh

[dpdk-dev] [RFC v2] hash: unify crc32 API header for x86 and ARM

2020-05-12 Thread pbhagavatula
From: Pavan Nikhilesh Merge crc32 hash calculation public API headers for x86 and ARM. Select the best available CRC32 algorithm when unsupported algorithm on a given CPU architecture is requested by an application. Previously, if an application directly includes `rte_crc_arm64.h` without includ

[dpdk-dev] [PATCH v2 1/2] common/octeontx2: move internal symbols to INTERNAL section

2020-05-12 Thread pbhagavatula
From: Pavan Nikhilesh Move the internal symbols to INTERNAL sections so that any change in them is not reported as ABI breakage. Signed-off-by: Pavan Nikhilesh --- v2 Changes: - Sort version map alphabetically - Add libabigail ignore tag for OCTEONTX2 devtools/libabigail.abignore

[dpdk-dev] [PATCH v2 2/2] mempool/octeontx2: move internal symbols to INTERNAL section

2020-05-12 Thread pbhagavatula
From: Pavan Nikhilesh Move the internal symbols to INTERNAL sections so that any change in them is not reported as ABI breakage. Signed-off-by: Pavan Nikhilesh --- devtools/libabigail.abignore| 4 +++- drivers/mempool/octeontx2/otx2_mempool.h

[dpdk-dev] [PATCH v3 1/2] common/octeontx2: move internal symbols to INTERNAL section

2020-05-13 Thread pbhagavatula
From: Pavan Nikhilesh Move the internal symbols to INTERNAL sections so that any change in them is not reported as ABI breakage. Signed-off-by: Pavan Nikhilesh --- v3 Changes: - Use `file_name_regexp` insted of `soname_regexp` in supress list for backward compatibility of libabigail. v2

[dpdk-dev] [PATCH v3 2/2] mempool/octeontx2: move internal symbols to INTERNAL section

2020-05-13 Thread pbhagavatula
From: Pavan Nikhilesh Move the internal symbols to INTERNAL sections so that any change in them is not reported as ABI breakage. Signed-off-by: Pavan Nikhilesh --- devtools/libabigail.abignore| 4 +++- drivers/mempool/octeontx2/otx2_mempool.h

[dpdk-dev] [PATCH] examples/l3fwd: fix unchecked function return values

2020-05-13 Thread pbhagavatula
From: Pavan Nikhilesh Fix unchecked return values reported by coverity. Coverity issue: 354235 Fixes: 8bd537e9c6cf ("examples/l3fwd: add service core setup based on caps") Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/main.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff

[dpdk-dev] [PATCH] examples/l3fwd-graph: fix unchecked function return values

2020-05-13 Thread pbhagavatula
From: Pavan Nikhilesh Fix unchecked return values reported by coverity. Coverity issue: 350601 Fixes: ef853f1fd979 ("examples/l3fwd-graph: add ethdev configuration changes") Signed-off-by: Pavan Nikhilesh --- examples/l3fwd-graph/main.c | 10 +- 1 file changed, 9 insertions(+), 1 dele

[dpdk-dev] [PATCH] app/eventdev: fix unchecked function return values

2020-05-13 Thread pbhagavatula
From: Pavan Nikhilesh Fix unchecked return values reported by coverity. Coverity issue: 357755 Fixes: 032a965a8f1d ("app/eventdev: support Tx adapter") Cc: sta...@dpdk.org Signed-off-by: Pavan Nikhilesh --- app/test-eventdev/test_pipeline_common.c | 8 ++-- 1 file changed, 6 insertions(+)

[dpdk-dev] [PATCH] test/graph_perf: fix memory leaks

2020-05-13 Thread pbhagavatula
From: Pavan Nikhilesh Fix memory leaks reported by coverity. Coverity issue: 358440, 358441, 358446. Fixes: 61d77071ab99 ("test/graph: add performance tests") Signed-off-by: Pavan Nikhilesh --- app/test/test_graph_perf.c | 6 ++ 1 file changed, 6 insertions(+) diff --git a/app/test/test_

[dpdk-dev] [PATCH v3] examples/l2fwd-event: add option to configure port pairs

2020-03-31 Thread pbhagavatula
From: Pavan Nikhilesh Current l2fwd-event application statically configures adjacent ports as destination ports for forwarding the traffic. Add a config option to pass the forwarding port pair mapping which allows the user to configure forwarding port mapping. If no config argument is specified

[dpdk-dev] [PATCH v5] net/octeontx2: add devargs to lock Rx/Tx ctx

2020-03-31 Thread pbhagavatula
From: Pavan Nikhilesh Add device arguments to lock Rx/Tx contexts. Application can either choose to lock Rx or Tx contexts by using 'lock_rx_ctx' or 'lock_tx_ctx' respectively per each port. Example: -w 0002:02:00.0,lock_rx_ctx=1 -w 0002:03:00.0,lock_tx_ctx=1 Signed-off-by: Pavan Nikhil

[dpdk-dev] [PATCH] ip_frag: fix improper byte order conversion

2020-03-31 Thread pbhagavatula
From: Pavan Nikhilesh Fix improper byte order conversion used to extract fragmentation offset in ipv6 reassembly. Fixes: 4f1a8f633862 ("ip_frag: add IPv6 reassembly") Cc: sta...@dpdk.org Signed-off-by: Pavan Nikhilesh --- lib/librte_ip_frag/rte_ipv6_reassembly.c | 2 +- 1 file changed, 1 inse

[dpdk-dev] [PATCH] test: add reassembly perf test

2020-04-03 Thread pbhagavatula
From: Pavan Nikhilesh Add reassembly perf autotest for both ipv4 and ipv6 reassembly. Each test is performed with vairable number of fragments per flow, either ordered or unorderd fragments and interleaved flows. Signed-off-by: Pavan Nikhilesh --- app/test/meson.build| 2 + app/t

[dpdk-dev] [PATCH v3] build: enable allow experimental API flag globally

2020-04-03 Thread pbhagavatula
From: Pavan Nikhilesh Remove setting ALLOW_EXPERIMENTAL_API individually for each Makefile and meson.build in app, lib and drivers instead enable ALLOW_EXPERIMENTAL_API flag globally. This changes reduces the clutter across the project while still maintaining the functionality of ALLOW_EXPERIMENT

[dpdk-dev] [PATCH] net/octeontx2: fix device configuration sequence

2020-04-04 Thread pbhagavatula
From: Pavan Nikhilesh When an application invokes rte_eth_dev_configure consecutively without setting up Rx/Tx queues, it will incorrectly return error while trying to restore Rx/Tx queue configuration. Fix configuration sequence by checking if any Rx/Tx queues are previously configured before t

[dpdk-dev] [PATCH v4] build: enable allow experimental API flag

2020-04-10 Thread pbhagavatula
From: Pavan Nikhilesh Remove setting ALLOW_EXPERIMENTAL_API individually for each Makefile and meson.build instead enable ALLOW_EXPERIMENTAL_API flag across app, lib and drivers. This changes reduces the clutter across the project while still maintaining the functionality of ALLOW_EXPERIMENTAL_AP

[dpdk-dev] [PATCH v6 00/11] example/l3fwd: introduce event device support

2020-01-27 Thread pbhagavatula
From: Pavan Nikhilesh This patchset adds support for event mode in l3fwd. The poll mode is still the default mode of operation. The following new command line parameters are added: --mode: Dictates the mode of operation either poll or event. If unset then by default poll mode is used.

[dpdk-dev] [PATCH v6 02/11] examples/l3fwd: split pipelines based on capability

2020-01-27 Thread pbhagavatula
From: Sunil Kumar Kori Add infra to split eventdev framework based on event Tx adapter capability. If event Tx adapter has internal port capability then we use `rte_event_eth_tx_adapter_enqueue` to transmitting packets else we use a SINGLE_LINK event queue to enqueue packets to a service core whi

[dpdk-dev] [PATCH v6 01/11] examples/l3fwd: add framework for event device

2020-01-27 Thread pbhagavatula
From: Sunil Kumar Kori Add framework to enable event device as a producer of packets. To switch between event mode and poll mode the following options have been added: `--mode="eventdev"` or `--mode="poll"` Allow the user to select the schedule type to be either RTE_SCHED_TYPE_ORDERED, RT

[dpdk-dev] [PATCH v6 04/11] examples/l3fwd: add ethdev setup based on eventdev

2020-01-27 Thread pbhagavatula
From: Sunil Kumar Kori Add ethernet port Rx/Tx queue setup for event device which are later used for setting up event eth Rx/Tx adapters. Signed-off-by: Sunil Kumar Kori Signed-off-by: Nipun Gupta --- examples/l3fwd/l3fwd.h | 10 +++ examples/l3fwd/l3fwd_event.c | 138 +

[dpdk-dev] [PATCH v6 03/11] examples/l3fwd: add event device configuration

2020-01-27 Thread pbhagavatula
From: Pavan Nikhilesh Add event device configuration based on the capabilities of the probed event device. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd_event.c | 3 + examples/l3fwd/l3fwd_event.h | 36 ++ examples/l3fwd/l3fwd_event_generic.c

[dpdk-dev] [PATCH v6 08/11] examples/l3fwd: add event lpm main loop

2020-01-27 Thread pbhagavatula
From: Pavan Nikhilesh Add lpm main loop for handling events based on capabilities of the event device. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd.h | 9 ++ examples/l3fwd/l3fwd_event.c | 9 ++ examples/l3fwd/l3fwd_event.h | 5 + examples/l3fwd/l3fwd_lpm.c | 203 +

[dpdk-dev] [PATCH v6 05/11] examples/l3fwd: add event port and queue setup

2020-01-27 Thread pbhagavatula
From: Sunil Kumar Kori Add event device queue and port setup based on event eth Tx adapter capabilities. Signed-off-by: Sunil Kumar Kori --- examples/l3fwd/l3fwd_event.c | 28 +- examples/l3fwd/l3fwd_event.h | 1 + examples/l3fwd/l3fwd_event_generic.c |

[dpdk-dev] [PATCH v6 07/11] examples/l3fwd: add service core setup based on caps

2020-01-27 Thread pbhagavatula
From: Pavan Nikhilesh Add service core setup when eventdev and Rx/Tx adapter don't have internal port capability. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd_event.c | 6 ++ examples/l3fwd/main.c| 188 +++ 2 files changed, 150 insertions(+)

[dpdk-dev] [PATCH v6 06/11] examples/l3fwd: add event eth Rx/Tx adapter setup

2020-01-27 Thread pbhagavatula
From: Pavan Nikhilesh Add event eth Rx/Tx adapter setup for both generic and internal port event device pipelines. Signed-off-by: Sunil Kumar Kori Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd_event.c | 3 + examples/l3fwd/l3fwd_event.h | 1 + example

[dpdk-dev] [PATCH v6 10/11] examples/l3fwd: add graceful teardown for eventdevice

2020-01-27 Thread pbhagavatula
From: Pavan Nikhilesh Add graceful teardown that addresses both event mode and poll mode. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/main.c | 50 +-- 1 file changed, 34 insertions(+), 16 deletions(-) diff --git a/examples/l3fwd/main.c b/examples/

[dpdk-dev] [PATCH v6 09/11] examples/l3fwd: add event em main loop

2020-01-27 Thread pbhagavatula
From: Pavan Nikhilesh Add em main loop for handling events based on capabilities of the event device. Signed-off-by: Pavan Nikhilesh --- examples/l3fwd/l3fwd.h | 10 ++ examples/l3fwd/l3fwd_em.c| 177 +++ examples/l3fwd/l3fwd_em.h|

[dpdk-dev] [PATCH v6 11/11] doc: update l3fwd user guide to support eventdev

2020-01-27 Thread pbhagavatula
From: Pavan Nikhilesh Update l3fwd user guide to include event device related information. Update release notes and MAINTAINERS file. Signed-off-by: Pavan Nikhilesh --- MAINTAINERS | 1 + doc/guides/rel_notes/release_20_02.rst | 5 ++ doc/guides/sample_app_ug/l3_

[dpdk-dev] [PATCH] mempool/octeontx2: optimize for L1D cache architecture

2020-01-31 Thread pbhagavatula
From: Pavan Nikhilesh OCTEON TX2 has 8 sets, 41 ways L1D cache, VA<9:7> bits dictate the set selection. Add additional padding to ensure that the element size always occupies odd number of cachelines to ensure even distribution of elements among L1D cache sets. Signed-off-by: Pavan Nikhilesh Si

[dpdk-dev] [PATCH v2] mempool/octeontx2: optimize for L1D cache architecture

2020-01-31 Thread pbhagavatula
From: Pavan Nikhilesh OCTEON TX2 has 8 sets, 41 ways L1D cache, VA<9:7> bits dictate the set selection. Add additional padding to ensure that the element size always occupies odd number of cachelines to ensure even distribution of elements among L1D cache sets. Signed-off-by: Pavan Nikhilesh Si

[dpdk-dev] [PATCH] l2fwd-event: fix lcore allocation in poll mode

2020-02-02 Thread pbhagavatula
From: Pavan Nikhilesh Skip master lcore when assigning cores to rx_queues as it is only used to print stats. Fixes: 4ff457986f76 ("examples/l2fwd-event: add default poll mode routines") Cc: sta...@dpdk.org Signed-off-by: Pavan Nikhilesh --- examples/l2fwd-event/l2fwd_poll.c | 1 + 1 file chan

[dpdk-dev] [PATCH] app/eventdev: fix test pipeline meson build

2020-02-02 Thread pbhagavatula
From: Pavan Nikhilesh Add missing pipeline test to meson build. Fixes: 2ff67267b049 ("app/eventdev: build with meson") Signed-off-by: Pavan Nikhilesh --- app/test-eventdev/meson.build | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/test-eventdev/meson.build b/app/t

[dpdk-dev] [PATCH] doc: fix service core mask used in l3fwd example

2020-02-06 Thread pbhagavatula
From: Pavan Nikhilesh Service core mask should be a hexadecimal value rather than a range of lcores. Bugzilla ID: 392 Fixes: 55499896d91a ("doc: add event mode to l3fwd guide") Signed-off-by: Pavan Nikhilesh --- doc/guides/sample_app_ug/l3_forward.rst | 2 +- 1 file changed, 1 insertion(+), 1

[dpdk-dev] [PATCH] event/octeontx2: remove WFE from dualslot dequeue

2020-02-13 Thread pbhagavatula
From: Pavan Nikhilesh Each workslot is always bound to a specific lcore there is no multi-core contention to cause cache trashing as a result it is safe to remove the WFE. Also, in dual workslot dequeue work will mostlikely be available on the pair workslot making WFE impractical. Signed-off-by:

[dpdk-dev] [PATCH] doc: fix octeontx2 eventdev devargs

2020-02-18 Thread pbhagavatula
From: Pavan Nikhilesh Fix OCTEON TX2 event device devargs examples. Fixes: 55e778ca4648 ("event/octeontx2: add devargs for inflight buffer count") Cc: sta...@dpdk.org Signed-off-by: Pavan Nikhilesh --- doc/guides/eventdevs/octeontx2.rst | 18 +- 1 file changed, 9 insertions(+)

[dpdk-dev] [PATCH v6] net/octeontx2: add devargs to lock Rx/Tx ctx

2020-06-28 Thread pbhagavatula
From: Pavan Nikhilesh Add device arguments to lock Rx/Tx contexts. Application can either choose to lock Rx or Tx contexts by using 'lock_rx_ctx' or 'lock_tx_ctx' respectively per each port. Example: -w 0002:02:00.0,lock_rx_ctx=1 -w 0002:03:00.0,lock_tx_ctx=1 Signed-off-by: Pavan Nikhil

[dpdk-dev] [PATCH] net/octeontx2: free CQ ring memzone on queue release

2020-06-28 Thread pbhagavatula
From: Pavan Nikhilesh Free CQ ring memzone on Rx queue release. This prevents CQ using incorrect memory size when ring size is reconfigured. Signed-off-by: Pavan Nikhilesh --- This patch depends on the following patch http://patches.dpdk.org/patch/72035/ drivers/net/octeontx2/otx2_ethdev.c

[dpdk-dev] [PATCH 2/3] event/octeontx2: fix sub event type violation

2020-06-28 Thread pbhagavatula
From: Pavan Nikhilesh In OCTEONTX2 event device we use sub_event_type to store the ethernet port identifier when we receive work from OCTEONTX2 ethernet device. This violates the event device spec as sub_event_type should be 0 in the initial receive stage. Set sub_event_type to 0 after copying th

[dpdk-dev] [PATCH 1/3] event/octeontx2: fix device reconfigure

2020-06-28 Thread pbhagavatula
From: Pavan Nikhilesh When event device is re-configured maintain the event queue to event port links and event port status instead of resetting them. Fixes: cd24e70258bd ("event/octeontx2: add device configure function") Cc: sta...@dpdk.org Signed-off-by: Pavan Nikhilesh --- drivers/event/oc

[dpdk-dev] [PATCH 3/3] event/octeontx2: improve datapath memory locality

2020-06-28 Thread pbhagavatula
From: Pavan Nikhilesh When event device is transmitting packet on OCTEONTX2 it needs to access the destined ethernet device TXq data. Currently, we get the TXq data through rte_eth_devices global array. Instead save the TXq address inside event port memory. Cc: sta...@dpdk.org Signed-off-by: Pa

[dpdk-dev] [PATCH 1/2] mempool/octeontx2: add devargs to lock ctx in cache

2020-03-06 Thread pbhagavatula
From: Pavan Nikhilesh Add device arguments to lock NPA aura and pool contexts in NDC cache. The device args take hexadecimal bitmask where each bit represent the corresponding aura/pool id. Example: -w 0002:02:00.0,npa_lock_mask=0xf // Lock first 4 aura/pool ctx Signed-off-by: Pavan Nikh

[dpdk-dev] [PATCH 2/2] net/octeontx2: add devargs to lock Rx/Tx ctx

2020-03-06 Thread pbhagavatula
From: Pavan Nikhilesh Add device arguments to lock Rx/Tx contexts. Application can either choose to lock Rx or Tx contexts by using 'lock_rx_ctx' or 'lock_tx_ctx' respectively per each port. Example: -w 0002:02:00.0,lock_rx_ctx=1 -w 0002:03:00.0,lock_tx_ctx=1 Signed-off-by: Pavan Nikhil

[dpdk-dev] [PATCH] example/l2fwd-event: add option to configure forwarding info

2020-03-24 Thread pbhagavatula
From: Pavan Nikhilesh Current l2fwd-event application statically configures adjacent ports as destination ports for forwarding the traffic. Add a config option to pass the forwarding port pair mapping which allows the user to configure forwarding port mapping. If no config argument is specified

[dpdk-dev] [PATCH] examples/l2fwd-event: add option to configure port pairs

2020-03-24 Thread pbhagavatula
From: Pavan Nikhilesh Current l2fwd-event application statically configures adjacent ports as destination ports for forwarding the traffic. Add a config option to pass the forwarding port pair mapping which allows the user to configure forwarding port mapping. If no config argument is specified

[dpdk-dev] [dpdk-dev v2] [PATCH 1/2] mempool/octeontx2: add devargs to lock ctx in cache

2020-03-24 Thread pbhagavatula
From: Pavan Nikhilesh Add device arguments to lock NPA aura and pool contexts in NDC cache. The device args take hexadecimal bitmask where each bit represent the corresponding aura/pool id. Example: -w 0002:02:00.0,npa_lock_mask=0xf // Lock first 4 aura/pool ctx Signed-off-by: Pavan Nikh

[dpdk-dev] [dpdk-dev v2] [PATCH 2/2] net/octeontx2: add devargs to lock Rx/Tx ctx

2020-03-24 Thread pbhagavatula
From: Pavan Nikhilesh Add device arguments to lock Rx/Tx contexts. Application can either choose to lock Rx or Tx contexts by using 'lock_rx_ctx' or 'lock_tx_ctx' respectively per each port. Example: -w 0002:02:00.0,lock_rx_ctx=1 -w 0002:03:00.0,lock_tx_ctx=1 Signed-off-by: Pavan Nikhil

[dpdk-dev] [dpdk-dev v3] [PATCH] net/octeontx2: add devargs to lock Rx/Tx ctx

2020-03-25 Thread pbhagavatula
From: Pavan Nikhilesh Add device arguments to lock Rx/Tx contexts. Application can either choose to lock Rx or Tx contexts by using 'lock_rx_ctx' or 'lock_tx_ctx' respectively per each port. Example: -w 0002:02:00.0,lock_rx_ctx=1 -w 0002:03:00.0,lock_tx_ctx=1 Signed-off-by: Pavan Nikhil

[dpdk-dev] [dpdk-dev v3] [PATCH] mempool/octeontx2: add devargs to lock ctx in cache

2020-03-25 Thread pbhagavatula
From: Pavan Nikhilesh Add device arguments to lock NPA aura and pool contexts in NDC cache. The device args take hexadecimal bitmask where each bit represent the corresponding aura/pool id. Example: -w 0002:02:00.0,npa_lock_mask=0xf // Lock first 4 aura/pool ctx Signed-off-by: Pavan Nikh

[dpdk-dev] [dpdk-dev v2] [PATCH] examples/l2fwd-event: add option to configure port pairs

2020-03-25 Thread pbhagavatula
From: Pavan Nikhilesh Current l2fwd-event application statically configures adjacent ports as destination ports for forwarding the traffic. Add a config option to pass the forwarding port pair mapping which allows the user to configure forwarding port mapping. If no config argument is specified

[dpdk-dev] [PATCH] event/octeontx2: use c11 atomics for statistics

2020-03-27 Thread pbhagavatula
From: Pavan Nikhilesh Use c11 atomics with RELAXED ordering instead of rte_atomic ops which enforce unnessary barries on arm64. Signed-off-by: Pavan Nikhilesh --- drivers/event/octeontx2/otx2_tim_evdev.c | 5 +++-- drivers/event/octeontx2/otx2_tim_evdev.h | 2 +- drivers/event/octeontx2/otx2

[dpdk-dev] [PATCH v4] net/octeontx2: add devargs to lock Rx/Tx ctx

2020-03-27 Thread pbhagavatula
From: Pavan Nikhilesh Add device arguments to lock Rx/Tx contexts. Application can either choose to lock Rx or Tx contexts by using 'lock_rx_ctx' or 'lock_tx_ctx' respectively per each port. Example: -w 0002:02:00.0,lock_rx_ctx=1 -w 0002:03:00.0,lock_tx_ctx=1 Signed-off-by: Pavan Nikhil

[dpdk-dev] [PATCH v16 2/8] ethdev: add mbuf RSS update as an offload

2019-11-06 Thread pbhagavatula
From: Pavan Nikhilesh Add new Rx offload flag `DEV_RX_OFFLOAD_RSS_HASH` which can be used to enable/disable PMDs write to `rte_mbuf::hash::rss`. PMDs notify the validity of `rte_mbuf::hash:rss` to the applcation by enabling `PKT_RX_RSS_HASH ` flag in `rte_mbuf::ol_flags`. Signed-off-by: Pavan Ni

[dpdk-dev] [PATCH v16 0/8] ethdev: add new Rx offload flags

2019-11-06 Thread pbhagavatula
From: Pavan Nikhilesh Add new Rx offload flags `DEV_RX_OFFLOAD_RSS_HASH` These flags can be used to enable/disable PMD writes to rte_mbuf fields `hash.rss` and also `ol_flags:PKT_RX_RSS`. Add new packet type set function `rte_eth_dev_set_ptypes`, allows application to inform PMDs about the packe

[dpdk-dev] [PATCH v16 3/8] ethdev: add validation to offloads set by PMD

2019-11-06 Thread pbhagavatula
From: Pavan Nikhilesh Some PMDs cannot work when certain offloads are enable/disabled, as a workaround PMDs auto enable/disable offloads internally and expose it through dev->data->dev_conf.rxmode.offloads. After device specific dev_configure is called compare the requested offloads to the offlo

[dpdk-dev] [PATCH v16 6/8] examples/eventdev_pipeline: add new Rx RSS hash offload

2019-11-06 Thread pbhagavatula
From: Pavan Nikhilesh Since pipeline_generic uses `rte_mbuf::hash::rss` add the new Rx offload flag `DEV_RX_OFFLOAD_RSS_HASH` to inform PMD to copy the RSS hash result into the mbuf. Signed-off-by: Pavan Nikhilesh --- examples/eventdev_pipeline/pipeline_worker_generic.c | 3 +++ 1 file changed

[dpdk-dev] [PATCH v16 5/8] examples/eventdev_pipeline: split port init sequence

2019-11-06 Thread pbhagavatula
From: Pavan Nikhilesh Split port initialization sequence based on event device capabilities. Signed-off-by: Pavan Nikhilesh --- examples/eventdev_pipeline/main.c | 128 - .../pipeline_worker_generic.c | 129 ++ .../eventdev_pipeline/p

[dpdk-dev] [PATCH v16 4/8] drivers/net: update Rx RSS hash offload capabilities

2019-11-06 Thread pbhagavatula
From: Pavan Nikhilesh Add DEV_RX_OFFLOAD_RSS_HASH flag for all PMDs that support RSS hash delivery. Signed-off-by: Pavan Nikhilesh Reviewed-by: Andrew Rybchenko Reviewed-by: Hemant Agrawal Acked-by: Jerin Jacob Acked-by: Ajit Khaparde --- drivers/net/bnxt/bnxt_ethdev.c | 6 +- d

[dpdk-dev] [PATCH v16 7/8] examples/l2fwd: disable ptype parsing

2019-11-06 Thread pbhagavatula
From: Pavan Nikhilesh Disable packet type parsing as l2fwd doesn't rely on packet types. Signed-off-by: Pavan Nikhilesh --- examples/l2fwd/Makefile| 1 + examples/l2fwd/main.c | 2 ++ examples/l2fwd/meson.build | 1 + 3 files changed, 4 insertions(+) diff --git a/examples/l2fwd/Makef

[dpdk-dev] [PATCH v16 8/8] app/testpmd: add command to set supported ptype mask

2019-11-06 Thread pbhagavatula
From: Pavan Nikhilesh Add command to set supported ptype mask. Usage: set port ptype_mask Disable ptype parsing by default. Signed-off-by: Pavan Nikhilesh --- app/test-pmd/cmdline.c | 83 + app/test-pmd/testpmd.c | 5 ++

[dpdk-dev] [PATCH v16 1/8] ethdev: add set ptype function

2019-11-06 Thread pbhagavatula
From: Pavan Nikhilesh Add `rte_eth_dev_set_ptypes` function that will allow the application to inform the PMD about reduced range of packet types to handle. Based on the ptypes set PMDs can optimize their Rx path. -If application doesn’t want any ptype information it can call `rte_eth_dev_set_pt

[dpdk-dev] [PATCH v4] net/octeontx2: add set supported types op

2019-11-06 Thread pbhagavatula
From: Pavan Nikhilesh Add support to set supported ptypes for octeontx2. Signed-off-by: Pavan Nikhilesh --- v4 Changes: -- - Rebase onto series http://patches.dpdk.org/project/dpdk/list/?series=7302. v3 Changes: -- - Actually update doc file. v2 Changes: --

[dpdk-dev] [PATCH v2 1/3] app: use RTE_DIM to calculate array size

2019-11-06 Thread pbhagavatula
From: Pavan Nikhilesh Use RTE_DIM macro to calculate array size Suggested-by: David Marchand Signed-off-by: Pavan Nikhilesh --- v2 Changes: -- - remove macros that are used only once.(David) app/test-pmd/cmdline.c| 2 +- app/test-pmd/icmpecho.c | 2 +- app/

<    5   6   7   8   9   10   11   12   13   14   >