[dpdk-dev] [PATCH v2] abi: change references to abi 20.0.1 to abi v21

2020-04-22 Thread Ray Kinsella
Change references to abi 20.0.1 to use abi v21, add myself as the map file maintainer to more closely monitor future abi changes. Add suppressions that were missed on changes to librte_lpm. Signed-off-by: Ray Kinsella --- MAINTAINERS | 2 ++ devtools/liba

Re: [dpdk-dev] [PATCH] net/ice/base: fix DCF switch rule

2020-04-22 Thread Lu, Nannan
Tested-by: Lu, Nannan -Original Message- From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Qi Zhang Sent: Thursday, April 23, 2020 11:07 AM To: Yang, Qiming Cc: Ye, Xiaolong ; dev@dpdk.org; Zhang, Qi Z Subject: [dpdk-dev] [PATCH] net/ice/base: fix DCF switch rule 1. ln_en bit shoul

[dpdk-dev] [PATCH v8 8/9] net/virtio: add election for vectorized path

2020-04-22 Thread Marvin Liu
Rewrite vectorized path selection logic. Default setting comes from RTE_LIBRTE_VIRTIO_INC_VECTOR option. Paths criteria will be checked as listed below. Packed ring vectorized path will be selected when: vectorized option is enabled AVX512F and required extensions are supported by compiler

[dpdk-dev] [PATCH v8 9/9] doc: add packed vectorized path

2020-04-22 Thread Marvin Liu
Document packed virtqueue vectorized path selection logic in virtio net PMD. Signed-off-by: Marvin Liu diff --git a/doc/guides/nics/virtio.rst b/doc/guides/nics/virtio.rst index 6286286db..4bd46f83e 100644 --- a/doc/guides/nics/virtio.rst +++ b/doc/guides/nics/virtio.rst @@ -417,6 +417,10 @@ Bel

[dpdk-dev] [PATCH v8 7/9] net/virtio: add vectorized packed ring Tx path

2020-04-22 Thread Marvin Liu
Optimize packed ring Tx path alike Rx path. Split Tx path into batch and single Tx functions. Batch function is further optimized by vector instructions. Signed-off-by: Marvin Liu diff --git a/drivers/net/virtio/virtio_ethdev.h b/drivers/net/virtio/virtio_ethdev.h index 5c112cac7..b7d52d497 100

[dpdk-dev] [PATCH v8 6/9] net/virtio: reuse packed ring xmit functions

2020-04-22 Thread Marvin Liu
Move xmit offload and packed ring xmit enqueue function to header file. These functions will be reused by packed ring vectorized Tx function. Signed-off-by: Marvin Liu diff --git a/drivers/net/virtio/virtio_rxtx.c b/drivers/net/virtio/virtio_rxtx.c index 7b65d0b0a..cf18fe564 100644 --- a/drivers

[dpdk-dev] [PATCH v8 3/9] net/virtio: inorder should depend on feature bit

2020-04-22 Thread Marvin Liu
Ring initialzation is different when inorder feature negotiated. This action should dependent on negotiated feature bits. Signed-off-by: Marvin Liu diff --git a/drivers/net/virtio/virtio_rxtx.c b/drivers/net/virtio/virtio_rxtx.c index 94ba7a3ec..e450477e8 100644 --- a/drivers/net/virtio/virtio_r

[dpdk-dev] [PATCH v8 5/9] net/virtio: add vectorized packed ring Rx path

2020-04-22 Thread Marvin Liu
Optimize packed ring Rx path when AVX512 enabled and mergeable buffer/Rx LRO offloading are not required. Solution of optimization is pretty like vhost, is that split path into batch and single functions. Batch function is further optimized by vector instructions. Also pad desc extra structure to 1

[dpdk-dev] [PATCH v8 2/9] net/virtio: enable vectorized path

2020-04-22 Thread Marvin Liu
Previously, virtio split ring vectorized path is enabled as default. This is not suitable for everyone because of that path not follow virtio spec. Add new config for virtio vectorized path selection. By default vectorized path is disabled. Signed-off-by: Marvin Liu diff --git a/config/common_ba

[dpdk-dev] [PATCH v8 1/9] net/virtio: add Rx free threshold setting

2020-04-22 Thread Marvin Liu
Introduce free threshold setting in Rx queue, default value of it is 32. Limiated threshold size to multiple of four as only vectorized packed Rx function will utilize it. Virtio driver will rearm Rx queue when more than rx_free_thresh descs were dequeued. Signed-off-by: Marvin Liu diff --git a/

[dpdk-dev] [PATCH v8 4/9] net/virtio-user: add vectorized path parameter

2020-04-22 Thread Marvin Liu
Add new parameter "vectorized" which can select vectorized path explicitly. This parameter will work when RTE_LIBRTE_VIRTIO_INC_VECTOR option is yes. When "vectorized" is set, driver will check both compiling environment and running environment when selecting path. Signed-off-by: Marvin Liu diff

[dpdk-dev] [PATCH v8 0/9] add packed ring vectorized path

2020-04-22 Thread Marvin Liu
This patch set introduced vectorized path for packed ring. The size of packed ring descriptor is 16Bytes. Four batched descriptors are just placed into one cacheline. AVX512 instructions can well handle this kind of data. Packed ring TX path can fully transformed into vectorized path. Packed ring

[dpdk-dev] [PATCH] net/ice/base: workaround for unexpected rule deletion

2020-04-22 Thread Qi Zhang
Ideally a rule with "TO VSI LIST" action should not be deleted when one of the VF reset happens. The correct action by kernel PF driver is to remove the VSI of a reset VF from the VSI list, but this is not implemented in kernel PF yet, so workaround is the DCF to prevent a rule with "To VSI List" a

Re: [dpdk-dev] [PATCH] security: fix crash at accessing non-implemented ops

2020-04-22 Thread Anoob Joseph
Hi Konstantin, These are data path ops and so it will be better if we can avoid such checks in the datapath. The same is done in ethdev also. http://code.dpdk.org/dpdk/v20.02/source/lib/librte_ethdev/rte_ethdev.h#L4372 Datapath functions in cryptodev (enqueue/dequeue) doesn't even have such che

[dpdk-dev] [PATCH v5 1/1] eal: add internal ABI marking support

2020-04-22 Thread Haiyue Wang
Introduce __rte_internal tag to mark internal ABI function which is used by the drivers or other libraries. Signed-off-by: Haiyue Wang --- buildtools/check-internal-syms.sh | 57 + devtools/check-symbol-change.sh | 7 devtools/checkpatches.sh|

[dpdk-dev] [PATCH v5 0/1] dpdk: introduce __rte_internal tag

2020-04-22 Thread Haiyue Wang
Move the internal function into INTERNAL session to avoid the ABI checking, and it is only used for DPDK drivers or related library. __rte_internal funA INTERNAL { global: funA }; v5: add the checkpatch for __rte_internal style v4: add the ABI check suppression rules v

[dpdk-dev] [PATCH] net/ice/base: fix DCF switch rule

2020-04-22 Thread Qi Zhang
1. ln_en bit should not be turned on, since we only support Rx VEB. 2. lan_en bit need to be turn on for a DCF switch rule, otherwise any Tx packet that hit on a rule will be dropped. Fixes: fed0c5ca5f19 ("net/ice/base: support programming a new switch recipe") Signed-off-by: Qi Zhang --- dr

Re: [dpdk-dev] [PATCH] net/ice/base: fix DCF switch rule on Tx path

2020-04-22 Thread Zhang, Qi Z
> -Original Message- > From: Zhang, Qi Z > Sent: Thursday, April 23, 2020 11:02 AM > To: Yang, Qiming > Cc: Ye, Xiaolong ; dev@dpdk.org; Zhang, Qi Z > > Subject: [PATCH] net/ice/base: fix DCF switch rule on Tx path > > 1. ln_en bit should not be turned on, since we only support Rx VE

[dpdk-dev] [PATCH] net/ice/base: fix DCF switch rule on Tx path

2020-04-22 Thread Qi Zhang
1. ln_en bit should not be turned on, since we only support Rx VEB. 2. lan_en bit need to be turn on for a DCF switch rule, otherwise any Tx packet that hit on a rule will be dropped. Fixes: fed0c5ca5f19 ("net/ice/base: support programming a new switch recipe") Signed-off-by: Qi Zhang --- dr

Re: [dpdk-dev] [PATCH v4 2/2] eal: emulate glibc getentropy for initial random seed

2020-04-22 Thread Stephen Hemminger
On Wed, 22 Apr 2020 20:42:54 -0300 Dan Gora wrote: > + fd = open("/dev/urandom", O_RDONLY); > + if (fd < 0) { > + errno = ENODEV; > + return -1; > + } > + > + end = start + length; > + while (start < end) { > + bytes = read(fd, start, end -

Re: [dpdk-dev] [PATCH v3 10/10] eal/windows: implement basic memory management

2020-04-22 Thread Dmitry Kozlyuk
On 2020-04-16 11:34 GMT-0700 Ranjit Menon wrote: [snip] > > --- /dev/null > > +++ b/lib/librte_eal/windows/include/rte_virt2phys.h [snip] > > This file is a duplicate of: : windows/virt2phys/virt2phys.h > This is by design, since it documents the driver interface. > > So, to prevent the two files

Re: [dpdk-dev] [PATCH v3] examples/ipsec-secgw: remove limitation for crypto sessions

2020-04-22 Thread Ananyev, Konstantin
> > Get rid of hardcoded limit of cryptodev sessions. > > Fixes: e1143d7dbbf4 ("examples/ipsec-secgw: get rid of maximum SA limitation") > Cc: vladimir.medved...@intel.com > > Signed-off-by: Vladimir Medvedkin > --- > examples/ipsec-secgw/ipsec-secgw.c | 25 +++-- > exam

Re: [dpdk-dev] [PATCH] security: fix crash at accessing non-implemented ops

2020-04-22 Thread Ananyev, Konstantin
Actually looking at app/test/test_security.c I also see a few '#ifdef RTE_DEBUG's. Let say: +static int +test_get_userdata_inv_context(void) +{ +#ifdef RTE_DEBUG + uint64_t md = 0xDEADBEEF; + + void *ret = rte_security_get_userdata(NULL, md); + TEST_ASSERT_MOCK_FUNCTION_CALL_RET(

Re: [dpdk-dev] rte_pktmbuf_pool_create performance

2020-04-22 Thread amit sehas
It could also be that this is the function that is the most time consuming:malloc_heap_alloc_on_heap_id() still looking, I suspect others have encountered such an issue and know what the problem is ...On Wednesday, April 22, 2020, 04:45:11 PM PDT, amit sehas wrote: I switched from uti

[dpdk-dev] rte_pktmbuf_pool_create performance

2020-04-22 Thread amit sehas
I switched from utilizing dpdk 16.11.1 to dpdk 18.11.6, in the process I started utilizing --single-file-segments,previously I was utilizing a patch for the same functionality on dpdk-16.11.1. And while linking I somehowneed to link in -lnuma now which I previously did not need to. I don't know

[dpdk-dev] [PATCH] security: fix crash at accessing non-implemented ops

2020-04-22 Thread Konstantin Ananyev
Valid checks for optional function pointers inside dev-ops were disabled by undefined macro. Fixes: b6ee98547847 ("security: fix verification of parameters") Signed-off-by: Konstantin Ananyev --- lib/librte_security/rte_security.c | 4 1 file changed, 4 deletions(-) diff --git a/lib/librt

Re: [dpdk-dev] [PATCH 1/7] eal: move OS common functions to single file

2020-04-22 Thread Ranjit Menon
On 4/22/2020 12:27 AM, tal...@mellanox.com wrote: From: Tal Shnaiderman Move common functions between Unix and Windows to eal_config.c. Like other files in common, we should call this eal_common_config.c Those simple functions are getter functions for IOVA, configuration, Multi-process. M

[dpdk-dev] [PATCH v4 1/2] eal: check for rdseed at run time for random seed

2020-04-22 Thread Dan Gora
Instead of enabling the rdseed instruction for the random number generator entropy source at compilation time, determine if the instruction can be used at run time. The DPDK build is updated to check that the compiler can generate the rdseed instruction even if the compilation platform does not na

[dpdk-dev] [PATCH v4 2/2] eal: emulate glibc getentropy for initial random seed

2020-04-22 Thread Dan Gora
The getentropy() function was introduced into glibc v2.25 and so is not available on all supported platforms. Previously, if DPDK was compiled (using meson) on a system which has getentropy(), it would introduce a dependency on glibc v2.25 which would prevent that binary from running on a system w

[dpdk-dev] [PATCH v4 0/2] eal: choose initial PRNG seed source at runtime

2020-04-22 Thread Dan Gora
Hi All, The following patches updates the rte_random subsystem to dynamically find the best source of the initial seed to the PRNG at run time. The first patch enables dynamic checking for the rdseed instruction and removes the requirement for it on the execution system. It also ensures that the

[dpdk-dev] [PATCH v2] common/mlx5: fix uninitialized variable warning

2020-04-22 Thread Stephen Hemminger
Gcc 8.3.0 (Debian 10) complains about unitilized variable. [474/2122] Compiling C object 'drivers/a715181@@tmp_rte_common_mlx5@sta/common_mlx5_mlx5_nl.c.o'. In file included from ../drivers/common/mlx5/mlx5_nl.h:12, from ../drivers/common/mlx5/mlx5_nl.c:23: ../drivers/common/mlx5

[dpdk-dev] [PATCH] common/mlx5: reduce size of netlink buffer

2020-04-22 Thread Stephen Hemminger
Since the driver is just using netlink to receive acknowledgements for command requests, having a large (32K) buffer is unnecessary. Allocating large buffers on stack will break in application is using smaller per-thread stacks. It looks like original code intended to use a smaller buffer for the

[dpdk-dev] [PATCH] common/mlx5: fix uninitialized variable warning

2020-04-22 Thread Stephen Hemminger
Gcc 8.3.0 (Debian 10) complains about uninitialized variable. [474/2122] Compiling C object 'drivers/a715181@@tmp_rte_common_mlx5@sta/common_mlx5_mlx5_nl.c.o'. In file included from ../drivers/common/mlx5/mlx5_nl.h:12, from ../drivers/common/mlx5/mlx5_nl.c:23: ../drivers/common/m

[dpdk-dev] [PATCH v2 2/3] config: remove unused config flags

2020-04-22 Thread Lukasz Wojciechowski
Following flags were still present in the common_base config, but they were not used anywhere in the code: * CONFIG_RTE_LIBRTE_ACL_DEBUG * CONFIG_RTE_LIBRTE_NFP_DEBUG_TX * CONFIG_RTE_LIBRTE_NFP_DEBUG_RX * CONFIG_RTE_LIBRTE_PMD_ARMV8_CRYPTO_DEBUG Signed-off-by: Lukasz Wojciechowski --- config/com

[dpdk-dev] [PATCH v2 3/3] mbuf: standardize library debug flag

2020-04-22 Thread Lukasz Wojciechowski
Use standardized debug macro RTE_DEBUG_MBUF instead of RTE_LIBRTE_MBUF_DEBUG for wrapping sanity checks. Add runtime control of running sanity checks basing on rte_log_can_log() function. To run mbuf sanity checks all following conditions must occur: 1) RTE_DEBUG_MBUF - must be defined, this can

[dpdk-dev] [PATCH v2 0/3] introduce global debug flag

2020-04-22 Thread Lukasz Wojciechowski
This set of patches introduces a global rte_debug flag for dpdk. This will allow easy switch to debug build configuration using a single flag. In the debug mode a RTE_DEBUG macro is defined to 1 and for every enabled to be built librarte a RTE_DEBUG_{library name} is also defined. These macros can

[dpdk-dev] [PATCH v2 1/3] config: introduce global rte debug flag

2020-04-22 Thread Lukasz Wojciechowski
A new boolean meson build flag is introduced with this patch: rte_debug. To enable this option add -Drte_debug=true to the meson configure command. By enabling this flag the globaly defined macro RTE_DEBUG becomes defined. It should be used for enabling debug code in all dpdk project components. U

Re: [dpdk-dev] [PATCH] doc: update release notes

2020-04-22 Thread Thomas Monjalon
18/04/2020 00:40, Ajit Khaparde: > On Fri, Apr 17, 2020 at 3:29 PM Ferruh Yigit wrote: > > On 4/17/2020 5:35 PM, Ajit Khaparde wrote: > > > Update release notes for 20.05 release with Broadcom PMD improvements: > > > > > The release notes should updated with the patchset that adds the feature, > >

Re: [dpdk-dev] [EXT] [PATCH v1 3/4] regexdev: add regexdev core functions

2020-04-22 Thread Ori Kam
Hi Guy, > -Original Message- > From: dev On Behalf Of Guy Kaneti > Sent: Sunday, April 19, 2020 1:39 PM > To: Ori Kam ; Thomas Monjalon > ; Jerin Jacob Kollanukkaran ; > xiang.w.w...@intel.com; Pavan Nikhilesh Bhagavatula > > Cc: dev@dpdk.org; Shahaf Shuler ; > hemant.agra...@nxp.com; O

Re: [dpdk-dev] [PATCH v4 34/34] net/bnxt: enable meson build on truflow code

2020-04-22 Thread Thomas Monjalon
15/04/2020 10:19, Venkat Duvvuru: > Include tf_ulp & tf_core directories and the files inside them. This commit is non-sense. You should compile files while adding them. It is not a lot more expensive to prepare proper patches.

Re: [dpdk-dev] [PATCH 2/2] eal: resolve getentropy at run time for random seed

2020-04-22 Thread Dan Gora
On Wed, Apr 22, 2020 at 5:14 PM Mattias Rönnblom wrote: > > On 2020-04-22 19:44, Dan Gora wrote: > > On Wed, Apr 22, 2020 at 5:28 AM Mattias Rönnblom > > wrote: > >> On 2020-04-21 21:54, Dan Gora wrote: > >>> The getentropy() function was introduced into glibc v2.25 and so is > >>> not available

Re: [dpdk-dev] [PATCH v2 4/4] regexdev: implement regex rte level functions

2020-04-22 Thread Ori Kam
Hi Guy, > -Original Message- > From: dev On Behalf Of Guy Kaneti > Sent: Tuesday, April 21, 2020 2:36 PM > To: Ori Kam ; Jerin Jacob Kollanukkaran > ; xiang.w.w...@intel.com > Cc: dev@dpdk.org; Pavan Nikhilesh Bhagavatula > ; Shahaf Shuler ; > hemant.agra...@nxp.com; Opher Reviv ; Alex >

Re: [dpdk-dev] [PATCH 2/2] eal: resolve getentropy at run time for random seed

2020-04-22 Thread Mattias Rönnblom
On 2020-04-22 19:44, Dan Gora wrote: > On Wed, Apr 22, 2020 at 5:28 AM Mattias Rönnblom > wrote: >> On 2020-04-21 21:54, Dan Gora wrote: >>> The getentropy() function was introduced into glibc v2.25 and so is >>> not available on all supported platforms. Previously, if DPDK was >>> compiled (usin

Re: [dpdk-dev] [PATCH v7 28/32] ethdev: add tracepoints

2020-04-22 Thread Akhil Goyal
> > > > CFLAGS += -O3 > > CFLAGS += $(WERROR_FLAGS) > > +CFLAGS += -DALLOW_EXPERIMENTAL_API > > > Adding DALLOW_EXPERIMENTAL_API in cflags is no more required for each app. > It is globally controlled now. Sorry my bad... That was for internal libs and PMDs. Apps still need that.

Re: [dpdk-dev] [PATCH v7 28/32] ethdev: add tracepoints

2020-04-22 Thread Akhil Goyal
> > From: Sunil Kumar Kori > > Add tracepoints at important and mandatory APIs for tracing support. > > Signed-off-by: Sunil Kumar Kori > --- > examples/cmdline/Makefile | 1 + > examples/cmdline/meson.build | 1 + > examples/distributor/Makefile

[dpdk-dev] [PATCH v7 31/32] mempool: add tracepoints

2020-04-22 Thread jerinj
From: Sunil Kumar Kori Add tracepoints at important and mandatory APIs for tracing support. Signed-off-by: Sunil Kumar Kori --- lib/librte_mempool/Makefile| 3 + lib/librte_mempool/mempool_trace_points.c | 108 + lib/librte_mempool/meson.build | 5 +

[dpdk-dev] [PATCH v7 32/32] doc: add trace library guide

2020-04-22 Thread jerinj
From: Jerin Jacob Add programmar's guide for trace library support. Signed-off-by: Jerin Jacob Signed-off-by: Sunil Kumar Kori --- MAINTAINERS| 1 + doc/guides/prog_guide/index.rst| 1 + doc/guides/prog_guide/trace_lib.rst| 348 +

[dpdk-dev] [PATCH v7 30/32] cryptodev: add tracepoints

2020-04-22 Thread jerinj
From: Sunil Kumar Kori Add tracepoints at important and mandatory APIs for tracing support. Signed-off-by: Sunil Kumar Kori --- lib/librte_cryptodev/Makefile | 4 +- lib/librte_cryptodev/cryptodev_trace_points.c | 70 + lib/librte_cryptodev/meson.build |

[dpdk-dev] [PATCH v7 26/32] eal/trace: add unit test cases

2020-04-22 Thread jerinj
From: Sunil Kumar Kori Example commands to run UT and check the traces with babeltrace viewer. - Delete the existing /root/dpdk-traces/ directory if needed. > sudo rm -rf /root/dpdk-traces/ - Start the dpdk-test > sudo ./build/app/test/dpdk-test -c 0x3 - --trace=.* - Run trace_autotest > trac

[dpdk-dev] [PATCH v7 28/32] ethdev: add tracepoints

2020-04-22 Thread jerinj
From: Sunil Kumar Kori Add tracepoints at important and mandatory APIs for tracing support. Signed-off-by: Sunil Kumar Kori --- examples/cmdline/Makefile | 1 + examples/cmdline/meson.build | 1 + examples/distributor/Makefile | 1 + exam

[dpdk-dev] [PATCH v7 29/32] eventdev: add tracepoints

2020-04-22 Thread jerinj
From: Sunil Kumar Kori Add tracepoints at important and mandatory APIs for tracing support. Signed-off-by: Sunil Kumar Kori --- lib/librte_eventdev/Makefile | 3 + lib/librte_eventdev/eventdev_trace_points.c | 173 ++ lib/librte_eventdev/meson.build |

[dpdk-dev] [PATCH v7 27/32] eal/trace: add trace performance test cases

2020-04-22 Thread jerinj
From: Jerin Jacob This test case shall be used to measure the trace overhead. Example command to run the performance test case. echo "trace_perf_autotest" | ./build/app/test/dpdk-test -c 0x3 --trace=.* Signed-off-by: Jerin Jacob --- app/test/Makefile | 1 + app/test/meson.build

[dpdk-dev] [PATCH v7 24/32] eal/trace: add trace bufsize configuration parameter

2020-04-22 Thread jerinj
From: Sunil Kumar Kori Trace library exposes --trace-bufsz EAL parameter to configure maximum size of ring buffer where events are to be stored. Signed-off-by: Sunil Kumar Kori --- doc/guides/linux_gsg/eal_args.include.rst | 13 lib/librte_eal/common/eal_common_options.c| 17 +

[dpdk-dev] [PATCH v7 25/32] eal/trace: add trace mode configuration parameter

2020-04-22 Thread jerinj
From: Sunil Kumar Kori Trace library exposes --trace-mode eal parameter to configure event record mode when ring buffers are full. Signed-off-by: Sunil Kumar Kori --- doc/guides/linux_gsg/eal_args.include.rst | 12 ++ lib/librte_eal/common/eal_common_options.c| 17 .../com

[dpdk-dev] [PATCH v7 21/32] eal/trace: add interrupt tracepoints

2020-04-22 Thread jerinj
From: Jerin Jacob Add the following interrupt related tracepoints. - rte_trace_lib_eal_intr_callback_register() - rte_trace_lib_eal_intr_callback_unregister() - rte_trace_lib_eal_intr_enable() - rte_trace_lib_eal_intr_disable() Signed-off-by: Jerin Jacob --- .../common/eal_common_trace_points

[dpdk-dev] [PATCH v7 20/32] eal/trace: add thread tracepoints

2020-04-22 Thread jerinj
From: Jerin Jacob Add the following thread related tracepoints. - rte_trace_lib_eal_thread_remote_launch() - rte_trace_lib_eal_thread_lcore_ready() Signed-off-by: Jerin Jacob --- lib/librte_eal/common/eal_common_trace_points.c | 8 lib/librte_eal/freebsd/eal_interrupts.c |

[dpdk-dev] [PATCH v7 23/32] eal/trace: add trace dir configuration parameter

2020-04-22 Thread jerinj
From: Sunil Kumar Kori Trace library exposes --trace-dir EAL parameter to configure directory where traces will be generated. Signed-off-by: Sunil Kumar Kori --- doc/guides/linux_gsg/eal_args.include.rst | 11 lib/librte_eal/common/eal_common_options.c| 15 ++ .../common/eal_c

[dpdk-dev] [PATCH v7 22/32] eal/trace: add trace configuration parameter

2020-04-22 Thread jerinj
From: Sunil Kumar Kori Trace library exposes --trace EAL parameter to enable trace points. Signed-off-by: Sunil Kumar Kori --- doc/guides/linux_gsg/eal_args.include.rst | 16 + lib/librte_eal/common/eal_common_options.c| 16 + lib/librte_eal/common/eal_common_trace.c | 12

[dpdk-dev] [PATCH v7 19/32] eal/trace: add memzone tracepoints

2020-04-22 Thread jerinj
From: Jerin Jacob Add the following memzone related tracepoints. - rte_trace_lib_eal_memzone_reserve() - rte_trace_lib_eal_memzone_lookup() - rte_trace_lib_eal_memzone_free() Signed-off-by: Jerin Jacob --- lib/librte_eal/common/eal_common_memzone.c| 9 ++ .../common/eal_common_trace_

[dpdk-dev] [PATCH v7 18/32] eal/trace: add memory tracepoints

2020-04-22 Thread jerinj
From: Jerin Jacob Add the following memory-related tracepoints. - rte_trace_lib_eal_mem_zmalloc() - rte_trace_lib_eal_mem_malloc() - rte_trace_lib_eal_mem_realloc() - rte_trace_lib_eal_mem_free() rte_malloc() and rte_free() has been used in the trace implementation, in order to avoid tracing im

[dpdk-dev] [PATCH v7 17/32] eal/trace: add alarm tracepoints

2020-04-22 Thread jerinj
From: Jerin Jacob Add following alarm related trace points. - rte_trace_lib_eal_alarm_set() - rte_trace_lib_eal_alarm_cancel() Signed-off-by: Jerin Jacob --- .../common/eal_common_trace_points.c | 9 lib/librte_eal/freebsd/eal_alarm.c| 3 +++ lib/librte_eal/inc

[dpdk-dev] [PATCH v7 14/32] eal/trace: hook internal trace APIs to Linux

2020-04-22 Thread jerinj
From: Jerin Jacob Connect the internal trace interface API to Linux EAL. Signed-off-by: Jerin Jacob --- lib/librte_eal/common/eal_common_thread.c | 4 +++- lib/librte_eal/linux/eal.c| 9 + lib/librte_eal/linux/eal_thread.c | 4 3 files changed, 16 insertion

[dpdk-dev] [PATCH v7 16/32] eal/trace: add generic tracepoints

2020-04-22 Thread jerinj
From: Jerin Jacob This patch creates the following generic tracepoint for generic tracing when there is no dedicated tracepoint is available. - rte_trace_lib_eal_generic_void() - rte_trace_lib_eal_generic_u64() - rte_trace_lib_eal_generic_u32() - rte_trace_lib_eal_generic_u16() - rte_trace_lib_e

[dpdk-dev] [PATCH v7 15/32] eal/trace: hook internal trace APIs to FreeBSD

2020-04-22 Thread jerinj
From: Jerin Jacob Connect the internal trace interface API to FreeBSD EAL. Signed-off-by: Jerin Jacob --- lib/librte_eal/freebsd/eal.c| 10 ++ lib/librte_eal/freebsd/eal_thread.c | 4 2 files changed, 14 insertions(+) diff --git a/lib/librte_eal/freebsd/eal.c b/lib/librt

[dpdk-dev] [PATCH v7 13/32] eal/trace: implement provider payload

2020-04-22 Thread jerinj
From: Jerin Jacob The trace function payloads such as rte_trace_point_emit_* have dual functions. The first to emit the payload for the registration function and the second one to act as trace mem emitters a.k.a provider payload. When it used as provider payload, those function copy the trace fi

[dpdk-dev] [PATCH v7 09/32] eal/trace: implement trace memory allocation

2020-04-22 Thread jerinj
From: Jerin Jacob Trace memory will be allocated per thread to enable lockless trace events updates to the memory. The allocator will first attempt to allocate from hugepage, if not available from hugepage then fallback to malloc memory. Later in the patches series, This API will be hooked to DP

[dpdk-dev] [PATCH v7 12/32] eal/trace: implement registration payload

2020-04-22 Thread jerinj
From: Jerin Jacob The trace function payloads such as rte_trace_point_emit_* have dual functions. The first to emit the payload for the registration function and the second one to act as trace memory emitters. When it used as registration payload, it will do the following to fulfill the registra

[dpdk-dev] [PATCH v7 10/32] eal/trace: implement debug dump function

2020-04-22 Thread jerinj
From: Jerin Jacob Implement rte_trace_metadata_dump() and rte_trace_dump() functions. Former one used to dump the CTF metadata file and the latter one to dump all the registered events and its status. Signed-off-by: Jerin Jacob Signed-off-by: Sunil Kumar Kori --- lib/librte_eal/common/eal_com

[dpdk-dev] [PATCH v7 11/32] eal/trace: implement trace save

2020-04-22 Thread jerinj
From: Jerin Jacob Implement rte_trace_save(), which will save the metadata file and trace memory snapshot to the trace directory. Signed-off-by: Jerin Jacob --- .../common/eal_common_trace_utils.c | 80 +++ lib/librte_eal/rte_eal_version.map| 1 + 2 files

[dpdk-dev] [PATCH v7 08/32] eal/trace: handle CTF keyword collision

2020-04-22 Thread jerinj
From: Sunil Kumar Kori Some of the keyword like align, event, "." and "->" etc will be used in CTF metadata syntax. This patch support for handling those keywords with DPDK events name. Signed-off-by: Sunil Kumar Kori --- lib/librte_eal/common/eal_common_trace_ctf.c | 119 +++

[dpdk-dev] [PATCH v7 05/32] eal/trace: add internal trace init and fini interface

2020-04-22 Thread jerinj
From: Jerin Jacob Define eal_trace_init() and eal_trace_fini() EAL interface functions that rte_eal_init() and rte_eal_cleanup() function can be use to initialize and finalize the trace subsystem. eal_trace_init() function will add the following functionality if trace is enabled through EAL comma

[dpdk-dev] [PATCH v7 07/32] eal/trace: create CTF TDSL metadata in memory

2020-04-22 Thread jerinj
From: Jerin Jacob Common trace format(CTF) defines the metadata[1][2] for trace events, This patch creates the metadata for the DPDK events in memory and latter this will be saved to trace directory on rte_trace_save() invocation. [1] https://diamon.org/ctf/#specification [2] https://diamon.org/

[dpdk-dev] [PATCH v7 03/32] eal/trace: implement trace register API

2020-04-22 Thread jerinj
From: Jerin Jacob The consumers of trace API defines the tracepoint and registers to eal. Internally these tracepoints will be stored in STAILQ for future use. This patch implements the tracepoint registration function. Signed-off-by: Jerin Jacob --- MAINTAINERS

[dpdk-dev] [PATCH v7 04/32] eal/trace: implement trace operation APIs

2020-04-22 Thread jerinj
From: Jerin Jacob This patch implements the following public trace APIs. - rte_trace_is_enabled() - rte_trace_mode_get() - rte_trace_mode_set() - rte_trace_pattern() - rte_trace_point_disable() - rte_trace_point_enable() - rte_trace_point_is_enabled() - rte_trace_point_lookup() - rte_trace_regex

[dpdk-dev] [PATCH v7 06/32] eal/trace: get bootup timestamp for trace

2020-04-22 Thread jerinj
From: Jerin Jacob Find epoch_sec, epoch_nsec and uptime_ticks time information on eal_trace_init()/bootup to derive the time in the trace. Signed-off-by: Jerin Jacob --- lib/librte_eal/common/eal_common_trace.c | 3 +++ .../common/eal_common_trace_utils.c | 22 +

[dpdk-dev] [PATCH v7 01/32] eal: introduce API for getting thread name

2020-04-22 Thread jerinj
From: Jerin Jacob Introduce rte_thread_getname() API to get the thread name and implement it for Linux and FreeBSD. FreeBSD does not support getting the thread name. One of the consumers of this API will be the trace subsystem where it used as an informative purpose. Signed-off-by: Jerin Jacob

[dpdk-dev] [PATCH v7 02/32] eal/trace: define the public API for trace support

2020-04-22 Thread jerinj
From: Jerin Jacob Define the public API for trace support. This patch also adds support for the build infrastructure and update the MAINTAINERS file for the trace subsystem. The tracepoint object is of size 8B, it a global variable and used in fastpath. Created a new __rte_trace_point section to

[dpdk-dev] [PATCH v7 00/32] DPDK Trace support

2020-04-22 Thread jerinj
From: Jerin Jacob v7 ~~ 1) Remove "meson: add libatomic as a global dependency for i686 clang" patch from series as it already applied on master. 2) Doc improvements (Thomas) Based on http://patches.dpdk.org/patch/68907/ comments. 3) Change tracepoint name(Thomas) from: rte_trace__[_] to

Re: [dpdk-dev] [PATCH v5 0/4] Add RCU reclamation APIs

2020-04-22 Thread David Marchand
On Wed, Apr 22, 2020 at 5:30 AM Honnappa Nagarahalli wrote: > This is not a new patch. This patch set is separated from the LPM > changes as the size of the changes in RCU library has grown due > to comments from community. These APIs will help reduce the changes > in LPM and hash libraries that a

[dpdk-dev] [PATCH v3 1/2] eal: check for rdseed at run time for random seed

2020-04-22 Thread Dan Gora
Instead of enabling the rdseed instruction for the random number generator entropy source at compilation time, determine if the instruction can be used at run time. The DPDK build is updated to check that the compiler can generate the rdseed instruction even if the compilation platform does not na

[dpdk-dev] [PATCH v3 2/2] eal: resolve getentropy at run time for random seed

2020-04-22 Thread Dan Gora
The getentropy() function was introduced into glibc v2.25 and so is not available on all supported platforms. Previously, if DPDK was compiled (using meson) on a system which has getentropy(), it would introduce a dependency on glibc v2.25 which would prevent that binary from running on a system w

[dpdk-dev] [PATCH v3 0/2] eal: choose initial PRNG seed source at runtime

2020-04-22 Thread Dan Gora
Hi All, The following patches updates the rte_random subsystem to dynamically find the best source of the initial seed to the PRNG at run time. The first patch enables dynamic checking for the rdseed instruction and removes the requirement for it on the execution system. It also ensures that the

Re: [dpdk-dev] [PATCH 2/2] eal: resolve getentropy at run time for random seed

2020-04-22 Thread Dan Gora
On Wed, Apr 22, 2020 at 5:28 AM Mattias Rönnblom wrote: > > On 2020-04-21 21:54, Dan Gora wrote: > > The getentropy() function was introduced into glibc v2.25 and so is > > not available on all supported platforms. Previously, if DPDK was > > compiled (using meson) on a system which has getentrop

Re: [dpdk-dev] [EXT] RE: [PATCH v3] ethdev: add tm support for shaper config in pkt mode

2020-04-22 Thread Nithin Dabilpuram
Fixed in v4. On Wed, Apr 22, 2020 at 12:18:14PM +, Singh, Jasvinder wrote: > External Email > > -- > > > > -Original Message- > > From: Nithin Dabilpuram > > Sent: Wednesday, April 22, 2020 9:09 AM > > To: Nithin Da

[dpdk-dev] [PATCH v4 4/4] net/octeontx2: support tm length adjust and pkt mode

2020-04-22 Thread Nithin Dabilpuram
From: Nithin Dabilpuram This patch adds support to packet length adjust TM feature for private shaper. It also adds support to packet mode feature that applies both to private shaper and node DWRR scheduling of SP children. Signed-off-by: Nithin Dabilpuram --- v3..v4: - No change. v2..v3: - N

[dpdk-dev] [PATCH v4 2/4] drivers/net: update tm capability for existing pmds

2020-04-22 Thread Nithin Dabilpuram
From: Nithin Dabilpuram Since existing PMD's support shaper byte mode and scheduler wfq byte mode, update the same in their port/level/node capabilities that are added. SoftNIC PMD is already upto date with new capabilities. Signed-off-by: Nithin Dabilpuram --- v3..v4: - No change v2..v3: - Up

[dpdk-dev] [PATCH v4 1/4] ethdev: add tm support for shaper config in pkt mode

2020-04-22 Thread Nithin Dabilpuram
From: Nithin Dabilpuram Some NIC hardware support shaper to work in packet mode i.e shaping or ratelimiting traffic is in packets per second (PPS) as opposed to default bytes per second (BPS). Hence this patch adds support to configure shared or private shaper in packet mode, provide rate in PPS

[dpdk-dev] [PATCH v4 3/4] app/testpmd: add tm cmd for non leaf and shaper pktmode

2020-04-22 Thread Nithin Dabilpuram
From: Nithin Dabilpuram Add TM command to enable packet mode for all SP children in non leaf node. This is a new command as "add tm nonleaf node pktmode". Also add support to shaper profile add command to take packet mode parameter used to setup shaper in packet mode. This adds an extra argument

Re: [dpdk-dev] [PATCH] net/mlx5: add 200G and 400G link speed

2020-04-22 Thread Ajit Khaparde
On Tue, Apr 21, 2020 at 6:45 AM Asaf Penso wrote: > There is no way to report back a link speed of 200Gbps nor 400Gbps. > > Adding both 200G and 400G link speed. > > Signed-off-by: Asaf Penso > Reviewed-by: Ajit Khaparde

Re: [dpdk-dev] [PATCH v3 1/1] eal: add internal ABI mark support

2020-04-22 Thread Wang, Haiyue
> -Original Message- > From: David Marchand > Sent: Wednesday, April 22, 2020 22:14 > To: Wang, Haiyue > Cc: dev ; Thomas Monjalon ; Richardson, > Bruce > ; Yigit, Ferruh ; Ray > Kinsella > Subject: Re: [PATCH v3 1/1] eal: add internal ABI mark support > > On Wed, Apr 22, 2020 at 3:58

[dpdk-dev] [PATCH v4 1/1] eal: add internal ABI mark support

2020-04-22 Thread Haiyue Wang
Introduce __rte_internal tag to mark internal ABI function, this kind of function can't be called by external application. Signed-off-by: Haiyue Wang --- buildtools/check-internal-syms.sh | 57 + devtools/check-symbol-change.sh | 7 devtools/libabigail.abi

[dpdk-dev] [PATCH v4 0/1] dpdk: introduce __rte_internal tag

2020-04-22 Thread Haiyue Wang
Move the internal function into INTERNAL session to avoid the ABI checking, and it is only used for DPDK drivers or related library. __rte_internal funA INTERNAL { global: funA }; v4: add the ABI check suppression rules v3: based on Neil's v2 patch https://patchwork.dpd

Re: [dpdk-dev] [EXT] RE: [PATCH] examples/ipsec-secgw: fix dropping of initial IPsec pkts

2020-04-22 Thread Anoob Joseph
Hi Konstantin, Please see inline. Thanks, Anoob > -Original Message- > From: Ananyev, Konstantin > Sent: Tuesday, April 21, 2020 8:48 PM > To: Lukas Bartosik [C] > Cc: akhil.go...@nxp.com; Nicolau, Radu ; Anoob > Joseph ; Narayana Prasad Raju Athreya > ; dev@dpdk.org; or...@mellanox.co

[dpdk-dev] [PATCH v5] doc: update flow non-cached mode notes

2020-04-22 Thread Bing Zhao
This patch updates the MLX5 PMD and release notes documentations. Adding the notes of the behavior change that rte flows organization is switched into non-cached mode for applications. Signed-off-by: Bing Zhao Acked-by: Ori Kam --- v2: update the description in release notes. v3: update the note

Re: [dpdk-dev] [PATCH v3 0/4] add AESNI-MB rawdev for multi-function processing

2020-04-22 Thread Coyle, David
Hi Kevin, > -Original Message- > From: Kevin Traynor > Sent: Wednesday, April 22, 2020 3:02 PM > > Hi David, > > On 21/04/2020 18:23, Coyle, David wrote: > > Thank you Thomas for your input. > > > > We would like to request that the Tech-Board (CC'ed) also review the > proposal to help

Re: [dpdk-dev] time for compiling test_ring.c

2020-04-22 Thread Wiles, Keith
> On Apr 22, 2020, at 3:12 AM, Thomas Monjalon wrote: > > 22/04/2020 07:11, Honnappa Nagarahalli: 22/04/2020 02:05, Honnappa Nagarahalli: > 22/04/2020 02:00, Thomas Monjalon: >> I don't want know why and when, but it seems the file test_ring.c >> became very long to compile, e

Re: [dpdk-dev] [PATCH v3 0/4] add AESNI-MB rawdev for multi-function processing

2020-04-22 Thread Coyle, David
Hi Akhil > -Original Message- > From: Akhil Goyal > Sent: Wednesday, April 22, 2020 2:44 PM > > Hi David, > > Hi Akhil, > > > > > > > > > > I did not look at your patches completely, but looking at the ops > > > that you have added For rawdev are pretty much same as that of a crypto > de

Re: [dpdk-dev] [PATCH v2] net/octeontx2: support for custom L2 header

2020-04-22 Thread Thomas Monjalon
06/04/2020 11:25, Jerin Jacob: > On Mon, Apr 6, 2020 at 12:13 PM wrote: > > Signed-off-by: Satheesh Paul A > > Acked-by: Jerin Jacob > Applied to dpdk-next-net-mrvl/master. Thanks Excuse me, I would like to confirm the name. I like being able to catch the first name of everybody, so I take to

Re: [dpdk-dev] [PATCH v3 1/1] eal: add internal ABI mark support

2020-04-22 Thread David Marchand
On Wed, Apr 22, 2020 at 3:58 PM Haiyue Wang wrote: > > Introduce __rte_internal tag to mark internal ABI function, this kind of > function can't be called by external application. > > Signed-off-by: Haiyue Wang > --- > buildtools/check-internal-syms.sh | 57 + > dev

Re: [dpdk-dev] [PATCH v9 2/2] eal: support for VFIO-PCI VF token

2020-04-22 Thread Wang, Haiyue
> -Original Message- > From: Thomas Monjalon > Sent: Wednesday, April 22, 2020 16:24 > To: Wang, Haiyue > Cc: dev@dpdk.org; Burakov, Anatoly ; > vattun...@marvell.com; > jer...@marvell.com; alex.william...@redhat.com; david.march...@redhat.com > Subject: Re: [PATCH v9 2/2] eal: support f

  1   2   >