Re: [dpdk-dev] [PATCH v2] mempool: fix mempool obj alignment for non x86

2020-01-11 Thread Stephen Hemminger
On Sat, 11 Jan 2020 19:04:10 +0530 wrote: > -#define MEMPOOL_F_NO_SPREAD 0x0001 /**< Do not spread among memory > channels. */ > +#define MEMPOOL_F_NO_SPREAD 0x0001 > +/**< Do not spread among memory channels. It is a hint to the library, > + * library honor this hint only when, if it

[dpdk-dev] [PATCH] lmp: add lookup x4 with x4 default values

2020-01-11 Thread pbhagavatula
From: Pavan Nikhilesh Add lookup x4 with x4 default values. This can be used in usecases where we have to process burst of packets from different ports. Signed-off-by: Pavan Nikhilesh --- app/test/test_lpm_perf.c | 31 + lib/librte_lpm/rte_lpm.h | 23 +++ lib/lib

[dpdk-dev] [PATCH v2] net/octeontx2: perf improvement to Tx vector func

2020-01-11 Thread pbhagavatula
From: Pavan Nikhilesh Use scalar loads instead of vector loads for fields that don't need any vector operations. Signed-off-by: Pavan Nikhilesh --- drivers/net/octeontx2/otx2_tx.c | 15 +-- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/drivers/net/octeontx2/otx2_tx

[dpdk-dev] [PATCH] net/octeontx2: perf improvement to tx vector func

2020-01-11 Thread pbhagavatula
From: Pavan Nikhilesh Use scalar loads instead of vector loads for fields that don't need any vector operations. Change-Id: I846731cd731d347a7f7e6a2e01d89dfa189ac244 Signed-off-by: Pavan Nikhilesh Reviewed-on: https://sj1git1.cavium.com/21243 Tested-by: sa_ip-toolkits-Jenkins Tested-by: sa_ip-s

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

2020-01-11 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 v3 11/11] doc: update l3fwd user guide to support eventdev

2020-01-11 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 | 76 +++-- 1 file changed, 70 insertions(+), 6 deletions(-) diff --git a/doc/guides/sample_app_ug/l3_forwa

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

2020-01-11 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 08/11] examples/l3fwd: add event lpm main loop

2020-01-11 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 v3 09/11] examples/l3fwd: add event em main loop

2020-01-11 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 v3 05/11] examples/l3fwd: add event port and queue setup

2020-01-11 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 v3 02/11] examples/l3fwd: split pipelines based on capability

2020-01-11 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 v3 06/11] examples/l3fwd: add event eth Rx/Tx adapter setup

2020-01-11 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 v3 04/11] examples/l3fwd: add ethdev setup based on eventdev

2020-01-11 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 v3 03/11] examples/l3fwd: add event device configuration

2020-01-11 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 v3 01/11] examples/l3fwd: add framework for event device

2020-01-11 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"` Also, allow the user to select the schedule type to be either RTE_SCHED_TYPE_ORDER

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

2020-01-11 Thread pbhagavatula
From: Pavan Nikhilesh 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 def

[dpdk-dev] [PATCH v2] mempool: fix mempool obj alignment for non x86

2020-01-11 Thread jerinj
From: Jerin Jacob The existing optimize_object_size() function address the memory object alignment constraint on x86 for better performance. Different (micro) architecture may have different memory alignment constraint for better performance and it not the same as the existing optimize_object_si