[ovs-dev] [PATCH v6 9/9] mfex-avx512: Add support for tunnel packets in avx512 MFEX.

2022-10-06 Thread Kumar Amber
This patch adds the necessary support to avx512 mfex to support handling of tunnel packet type. Signed-off-by: Kumar Amber --- v6: - Fix minor comments from Cian. - Deduce magic bits through protocol sizes. v5: - check metadata IP address to find tunneling is valid or not. As dummy-pmd often

[ovs-dev] [PATCH v6 8/9] mfex-study: Modify study func to select outer and inner MFEX funcs.

2022-10-06 Thread Kumar Amber
The MFEX study function is split into outer and inner to allow for independent selection and studying of packets in outer and inner flows to different ISA optimized miniflow extract implementations. Signed-off-by: Kumar Amber --- v6: - Fix minor comments from Cian. --- --- lib/dpif-netdev

[ovs-dev] [PATCH v6 6/9] dpif-mfex: Modify set/get MFEX commands to include inner.

2022-10-06 Thread Kumar Amber
-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- Documentation/topics/dpdk/bridge.rst | 24 ++-- lib/dpif-netdev-private-extract.c| 23 ++- lib/dpif-netdev-private-extract.h| 6 +- lib/dpif-netdev-private-thread.h

[ovs-dev] [PATCH v6 7/9] dpif-mfex: Change MFEX fn pointer prototype to include md_is_valid.

2022-10-06 Thread Kumar Amber
The md_is_valid parameter is passed from DPIF to MFEX to allow MFEX functions to detect the tunneling and decide the processing of Inner packets in static predictable branches. Signed-off-by: Kumar Amber --- lib/dpif-netdev-avx512.c | 3 ++- lib/dpif-netdev-extract-avx512.c | 9

[ovs-dev] [PATCH v6 5/9] dpif-netdev: Add function pointer for dpif re-circulate.

2022-10-06 Thread Kumar Amber
This patch adds support for selecting the recirculation implementation based on the DPIF implementation. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- v6: - Refactor common function from default function. v3: - Add description to the dpif recirc

[ovs-dev] [PATCH v6 3/9] dpif-netdev-avx512: Refactor avx512 dpif and create new APIs.

2022-10-06 Thread Kumar Amber
Create new APIs for the avx512 DPIF, enabling one baseline common code to be specialized into DPIF implementations for "outer" processing, and "recirc" processing. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter Acked-by: Sunil Pai

[ovs-dev] [PATCH v6 4/9] dpif-netdev-avx512: Add inner packet handling to dpif.

2022-10-06 Thread Kumar Amber
This patch adds the necessary changes required to support tunnel packet types in avx512 dpif. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter Acked-by: Sunil Pai G --- v4: - Rebase onto Simple match. v3: - Apply in_port optimization suggested by Harry

[ovs-dev] [PATCH v6 2/9] dpif-netdev: Refactor hash function to own header.

2022-10-06 Thread Kumar Amber
The refactor allows us to use hash function accross multiple files which was earlier restricted to dpif-netdev.c only. This patch enables the use of the hash function in avx512 dpif. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter Acked-by: Sunil Pai G

[ovs-dev] [PATCH v6 1/9] dpif-netdev: Refactor per thread recirc data allocation.

2022-10-06 Thread Kumar Amber
The refactor allows us to use *recirc_depth_get() to obtain the depth across ovs which was previously limited to only dpif-netdev.c. The patch enables the use of recirc_depth_get() function in avx512 dpif. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter

[ovs-dev] [PATCH v6 0/9] DPIF + MFEX Inner AVX512

2022-10-06 Thread Kumar Amber
over the scalar path. --- v6: - Fix minor comments. - Reworked magic block array and build the offsets from header sizes. v5: - Added comments to decribe method for handling MFEX inner. - Fixed garbage passing of incorrect tunnel values. --- Kumar Amber (9): dpif-netdev: Refactor per thread

[ovs-dev] [PATCH v5 9/9] mfex-avx512: Add support for tunnel packets in avx512 mfex.

2022-08-25 Thread Kumar Amber
This patch adds the necessary support to avx512 mfex to support handling of tunnel packet type. Signed-off-by: Kumar Amber --- v5: - check metadata IP address to find tunneling is valid or not. As dummy-pmd often passes garbage data to dpif. --- --- lib/dpif-netdev-avx512.c | 16

[ovs-dev] [PATCH v5 8/9] mfex-study: Modify study func to select outer and inner mfex funcs.

2022-08-25 Thread Kumar Amber
The Mfex study function is split into outer and inner to allow for independent selection and studying of packets in outer and inner flows to different ISA optimized Mfexs. Signed-off-by: Kumar Amber --- lib/dpif-netdev-extract-study.c | 126 +--- 1 file changed, 83

[ovs-dev] [PATCH v5 7/9] dpif-mfex: Change mfex fn pointer prototype to include md_is_valid.

2022-08-25 Thread Kumar Amber
The md_is_valid parameter is passed from DPIF to MFEX to allow mfex functions to detect the tunneling and decide the processing of Inner packets in static predictable branches. Signed-off-by: Kumar Amber --- lib/dpif-netdev-avx512.c | 3 ++- lib/dpif-netdev-extract-avx512.c | 9

[ovs-dev] [PATCH v5 6/9] dpif-mfex: Modify set/get mfex commands to include inner.

2022-08-25 Thread Kumar Amber
. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- Documentation/topics/dpdk/bridge.rst | 18 -- lib/dpif-netdev-private-extract.c| 23 ++- lib/dpif-netdev-private-extract.h| 6 +- lib/dpif-netdev-private

[ovs-dev] [PATCH v5 5/9] dpif-netdev: Add function pointer for dpif re-circulate.

2022-08-25 Thread Kumar Amber
The patch adds and re-uses the dpif set command to set the function pointers to be used to switch between different inner dpifs. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- v3: - Add description to the dpif recirc function. - Fix use of return

[ovs-dev] [PATCH v5 4/9] dpif-netdev-avx512: Add inner packet handling to dpif.

2022-08-25 Thread Kumar Amber
This patch adds the necessary changes required to support tunnel packet types in avx512 dpif. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- v4: - Rebase onto Simple match. v3: - Apply in_port optimization suggested by Harry. --- --- lib/dpif-netdev

[ovs-dev] [PATCH v5 3/9] dpif-netdev-avx512: Refactor avx512 dpif and create new APIs.

2022-08-25 Thread Kumar Amber
Create new APIs for the avx512 DPIF, enabling one baseline common code to be specialized into DPIF implementations for "outer" processing, and "recirc" processing. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- v4: - Rebase on

[ovs-dev] [PATCH v5 2/9] dpif-netdev: Refactor hash function to own header.

2022-08-25 Thread Kumar Amber
The refactor allows us to use hash function accross multiple files which was earlier restricted to dpif-netdev.c only. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- v3: - Fix minor comments from Harry. --- --- lib/dpif-netdev-private-dpcls.h | 23

[ovs-dev] [PATCH v5 1/9] dpif-netdev: Refactor per thread recirc data allocation.

2022-08-25 Thread Kumar Amber
The refactor allows us to use *recirc_depth_get() to obtain the depth across ovs which was previously limited to only dpif-netdev.c. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter Acked-by: Harry van Haaren --- lib/dpif-netdev-private-dpif.c | 2 ++ lib

[ovs-dev] [PATCH v5 0/9] DPIF + MFEX Inner AVX512

2022-08-25 Thread Kumar Amber
over the scalar path. --- v5: - Added comments to decribe method for handling MFEX inner. - Fixed garbage passing of incorrect tunnel values. --- Kumar Amber (9): dpif-netdev: Refactor per thread recirc data allocation. dpif-netdev: Refactor hash function to own header. dpif-netdev-avx512

[ovs-dev] [PATCH v4 9/9] mfex-avx512: Add support for tunnel packets in avx512 mfex.

2022-08-07 Thread Kumar Amber
This patch adds the necessary support to avx512 mfex to support handling of tunnel packet type. Signed-off-by: Kumar Amber --- lib/dpif-netdev-avx512.c | 16 ++-- lib/dpif-netdev-extract-avx512.c | 146 +- lib/dpif-netdev-private-extract.c | 4 +- 3

[ovs-dev] [PATCH v4 8/9] mfex-study: Modify study func to select outer and inner mfex funcs.

2022-08-07 Thread Kumar Amber
The Mfex study function is split into outer and inner to allow for independent selection and studying of packets in outer and inner flows to different ISA optimized Mfexs. Signed-off-by: Kumar Amber --- lib/dpif-netdev-extract-study.c | 126 +--- 1 file changed, 83

[ovs-dev] [PATCH v4 7/9] dpif-mfex: Change mfex fn pointer prototype to include md_is_valid.

2022-08-07 Thread Kumar Amber
The md_is_valid parameter is passed from DPIF to MFEX to allow mfex functions to detect the tunneling and decide the processing of Inner packets in static predictable branches. Signed-off-by: Kumar Amber --- lib/dpif-netdev-avx512.c | 3 ++- lib/dpif-netdev-extract-avx512.c | 9

[ovs-dev] [PATCH v4 6/9] dpif-mfex: Modify set/get mfex commands to include inner.

2022-08-07 Thread Kumar Amber
. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- Documentation/topics/dpdk/bridge.rst | 18 -- lib/dpif-netdev-private-extract.c| 23 ++- lib/dpif-netdev-private-extract.h| 6 +- lib/dpif-netdev-private

[ovs-dev] [PATCH v4 5/9] dpif-netdev: Add function pointer for dpif re-circulate.

2022-08-07 Thread Kumar Amber
The patch adds and re-uses the dpif set command to set the function pointers to be used to switch between different inner dpifs. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- v3: - Add description to the dpif recirc function. - Fix use of return

[ovs-dev] [PATCH v4 4/9] dpif-netdev-avx512: Add inner packet handling to dpif.

2022-08-07 Thread Kumar Amber
This patch adds the necessary changes required to support tunnel packet types in avx512 dpif. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- v4: - Rebase onto Simple match. v3: - Apply in_port optimization suggested by Harry. --- --- lib/dpif-netdev

[ovs-dev] [PATCH v4 3/9] dpif-netdev-avx512: Refactor avx512 dpif and create new APIs.

2022-08-07 Thread Kumar Amber
Create new APIs for the avx512 DPIF, enabling one baseline common code to be specialized into DPIF implementations for "outer" processing, and "recirc" processing. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- v4: - Rebase on

[ovs-dev] [PATCH v4 2/9] dpif-netdev: Refactor hash function to own header.

2022-08-07 Thread Kumar Amber
The refactor allows us to use hash function accross multiple files which was earlier restricted to dpif-netdev.c only. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- v3: - Fix minor comments from Harry. --- --- lib/dpif-netdev-private-dpcls.h | 23

[ovs-dev] [PATCH v4 1/9] dpif-netdev: Refactor per thread recirc data allocation.

2022-08-07 Thread Kumar Amber
The refactor allows us to use *recirc_depth_get() to obtain the depth across ovs which was previously limited to only dpif-netdev.c. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter Acked-by: Harry van Haaren --- lib/dpif-netdev-private-dpif.c | 2 ++ lib

[ovs-dev] [PATCH v4 0/9] DPIF + MFEX Inner Vxlan AVX512

2022-08-07 Thread Kumar Amber
in performance over the scalar path. Kumar Amber (9): dpif-netdev: Refactor per thread recirc data allocation. dpif-netdev: Refactor hash function to own header. dpif-netdev-avx512: Refactor avx512 dpif and create new APIs. dpif-netdev-avx512: Add inner packet handling to dpif. dpif-netdev: Add

[ovs-dev] [PATCH v11 4/4] dpif-netdev/mfex: Add ipv6 profile based hashing.

2022-07-01 Thread Kumar Amber
For packets which don't already have a hash calculated, miniflow_hash_5tuple() calculates the hash of a packet using the previously built miniflow. This commit adds IPv6 profile specific hashing which uses fixed offsets into the packet to improve hashing performance. Signed-off-by: Kumar Amber

[ovs-dev] [PATCH v11 3/4] dpif-netdev/mfex: Add AVX512 ipv6 traffic profiles

2022-07-01 Thread Kumar Amber
Add AVX512 Ipv6 optimized profile for vlan/IPv6/UDP and vlan/IPv6/TCP, IPv6/UDP and IPv6/TCP. MFEX autovalidaton test-case already has the IPv6 support for validating against the scalar mfex. Signed-off-by: Kumar Amber Signed-off-by: Harry van Haaren Co-authored-by: Harry van Haaren --- v11

[ovs-dev] [PATCH v11 2/4] mfex_avx512: Calculate miniflow_bits at compile time.

2022-07-01 Thread Kumar Amber
The patch removes magic numbers from miniflow_bits and calculates the bits at compile time. This also makes it easier to handle any ABI changes. Signed-off-by: Kumar Amber --- lib/dpif-netdev-extract-avx512.c | 21 + 1 file changed, 17 insertions(+), 4 deletions(-) diff

[ovs-dev] [PATCH v11 0/4] MFEX Optimizations IPv6 + Hashing Optimizations

2022-07-01 Thread Kumar Amber
AVX512 Profiles. v5: - Add Ipv6 and TCP packet length checks. v4: - rebase to master. - use static key lenghts for different packet types. v3: - rebase to master. v2: - fix the CI build. - fix check-patch for co-author. --- Kumar Amber (4): mfex_avx512: Calculate pkt offsets at compile time

[ovs-dev] [PATCH v11 1/4] mfex_avx512: Calculate pkt offsets at compile time.

2022-07-01 Thread Kumar Amber
The patch removes magic numbers pkt offsets and minimum packet lenght and instead calculate it at compile time. Signed-off-by: Kumar Amber --- v8: - Rename offset defines. --- --- lib/dpif-netdev-extract-avx512.c | 29 + 1 file changed, 21 insertions(+), 8 deletions

[ovs-dev] [PATCH v2] Pmd.at: fix dpcls and dpif configuration test cases.

2022-06-30 Thread Kumar Amber
is seen with dpif where re-arranging the get command after set makes it consistent across any builds. Fixes: cc0a87b11c (pmd.at: Add test-cases for DPCLS and DPIF commands.) Signed-off-by: Kumar Amber Acked-by: Michael Phelan --- tests/pmd.at | 16 1 file changed, 4 insertions

[ovs-dev] [PATCH v3 4/5] dpif-netdev: Add function pointer for dpif re-circulate.

2022-06-28 Thread Kumar Amber
The patch adds and re-uses the dpif set command to set the function pointers to be used to switch between different inner dpifs. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- v3: - Add description to the dpif recirc function. - Fix use of return

[ovs-dev] [PATCH v3 5/5] dpif-netdev-avx512: Add inner packet handling to dpif.

2022-06-28 Thread Kumar Amber
This patch adds the necessary changes required to support tunnel packet types in avx512 dpif. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- v3: - Apply in_port optimization suggested by Harry. --- --- lib/dpif-netdev-avx512.c | 25

[ovs-dev] [PATCH v3 3/5] dpif-netdev-avx512: Refactor avx512 dpif and create new APIs.

2022-06-28 Thread Kumar Amber
Create new APIs for the avx512 DPIF, enabling one baseline common code to be specialized into DPIF implementations for "outer" processing, and "recirc" processing. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- v3: - Fix

[ovs-dev] [PATCH v3 1/5] dpif-netdev: Refactor per thread recirc data allocation.

2022-06-28 Thread Kumar Amber
The refactor allows us to use *recirc_depth_get() to obtain the depth across ovs which was previously limited to only dpif-netdev.c. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter Acked-by: Harry van Haaren --- lib/dpif-netdev-private-dpif.c | 2 ++ lib

[ovs-dev] [PATCH v3 2/5] dpif-netdev: Refactor hash function to own header.

2022-06-28 Thread Kumar Amber
The refactor allows us to use hash function accross multiple files which was earlier restricted to dpif-netdev.c only. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- v3: - Fix minor comments from Harry. --- --- lib/dpif-netdev-private-dpcls.h | 23

[ovs-dev] [PATCH v3 0/5] DPIF AVX512 Recirculation

2022-06-28 Thread Kumar Amber
The patch adds support for recirculation of packets in AVX512 DPIF which would allow for processing tunneled packets. --- v3: * Fix comments from Harry. V2: * Split DPIF AVX512 into separate patchset. --- Kumar Amber (5): dpif-netdev: Refactor per thread recirc data allocation. dpif-netdev

[ovs-dev] [PATCH v10 4/4] dpif-netdev/mfex: Add ipv6 profile based hashing.

2022-05-31 Thread Kumar Amber
For packets which don't already have a hash calculated, miniflow_hash_5tuple() calculates the hash of a packet using the previously built miniflow. This commit adds IPv6 profile specific hashing which uses fixed offsets into the packet to improve hashing performance. Signed-off-by: Kumar Amber

[ovs-dev] [PATCH v10 3/4] dpif-netdev/mfex: Add AVX512 ipv6 traffic profiles

2022-05-31 Thread Kumar Amber
Add AVX512 Ipv6 optimized profile for vlan/IPv6/UDP and vlan/IPv6/TCP, IPv6/UDP and IPv6/TCP. MFEX autovalidaton test-case already has the IPv6 support for validating against the scalar mfex. Signed-off-by: Kumar Amber Signed-off-by: Harry van Haaren Co-authored-by: Harry van Haaren --- v10

[ovs-dev] [PATCH v10 2/4] mfex_avx512: Calculate miniflow_bits at compile time.

2022-05-31 Thread Kumar Amber
The patch removes magic numbers from miniflow_bits and calculates the bits at compile time. This also makes it easier to handle any ABI changes. Signed-off-by: Kumar Amber --- lib/dpif-netdev-extract-avx512.c | 21 + 1 file changed, 17 insertions(+), 4 deletions(-) diff

[ovs-dev] [PATCH v10 1/4] mfex_avx512: Calculate pkt offsets at compile time.

2022-05-31 Thread Kumar Amber
The patch removes magic numbers pkt offsets and minimum packet lenght and instead calculate it at compile time. Signed-off-by: Kumar Amber --- v8: - Rename offset defines. --- --- lib/dpif-netdev-extract-avx512.c | 29 + 1 file changed, 21 insertions(+), 8 deletions

[ovs-dev] [PATCH v10 0/4] MFEX Optimizations IPv6 + Hashing Optimizations

2022-05-31 Thread Kumar Amber
checks. v4: - rebase to master. - use static key lenghts for different packet types. v3: - rebase to master. v2: - fix the CI build. - fix check-patch for co-author. --- Kumar Amber (4): mfex_avx512: Calculate pkt offsets at compile time. mfex_avx512: Calculate miniflow_bits at compile time. dpif

[ovs-dev] [PATCH v9 4/4] dpif-netdev/mfex: Add ipv6 profile based hashing.

2022-05-31 Thread Kumar Amber
For packets which don't already have a hash calculated, miniflow_hash_5tuple() calculates the hash of a packet using the previously built miniflow. This commit adds IPv6 profile specific hashing which uses fixed offsets into the packet to improve hashing performance. Signed-off-by: Kumar Amber

[ovs-dev] [PATCH v9 3/4] dpif-netdev/mfex: Add AVX512 ipv6 traffic profiles

2022-05-31 Thread Kumar Amber
Add AVX512 Ipv6 optimized profile for vlan/IPv6/UDP and vlan/IPv6/TCP, IPv6/UDP and IPv6/TCP. MFEX autovalidaton test-case already has the IPv6 support for validating against the scalar mfex. Signed-off-by: Kumar Amber Signed-off-by: Harry van Haaren Co-authored-by: Harry van Haaren --- v9

[ovs-dev] [PATCH v9 2/4] mfex_avx512: Calculate miniflow_bits at compile time.

2022-05-31 Thread Kumar Amber
The patch removes magic numbers from miniflow_bits and calculates the bits at compile time. This also makes it easier to handle any ABI changes. Signed-off-by: Kumar Amber --- lib/dpif-netdev-extract-avx512.c | 21 + 1 file changed, 17 insertions(+), 4 deletions(-) diff

[ovs-dev] [PATCH v9 1/4] mfex_avx512: Calculate pkt offsets at compile time.

2022-05-31 Thread Kumar Amber
The patch removes magic numbers pkt offsets and minimum packet lenght and instead calculate it at compile time. Signed-off-by: Kumar Amber --- v8: - Rename offset defines. --- --- lib/dpif-netdev-extract-avx512.c | 29 + 1 file changed, 21 insertions(+), 8 deletions

[ovs-dev] [PATCH v9 0/4] MFEX Optimizations IPv6 + Hashing Optimizations

2022-05-31 Thread Kumar Amber
for different packet types. v3: - rebase to master. v2: - fix the CI build. - fix check-patch for co-author. --- Kumar Amber (4): mfex_avx512: Calculate pkt offsets at compile time. mfex_avx512: Calculate miniflow_bits at compile time. dpif-netdev/mfex: Add AVX512 ipv6 traffic profiles

[ovs-dev] [PATCH v6] tests/mfex: Improve pcap script for mfex tests.

2022-05-26 Thread Kumar Amber
The mfex pcap generation script is improved for varied length traffic and also removes the hard coded mfex_pcap and instead uses the script itself to generate complex traffic patterns for testing. Signed-off-by: Kumar Amber Acked-by: Cian Ferriter --- v6: - move the pcap generation

[ovs-dev] [PATCH v8 4/4] dpif-netdev/mfex: Add ipv6 profile based hashing.

2022-05-26 Thread Kumar Amber
For packets which don't already have a hash calculated, miniflow_hash_5tuple() calculates the hash of a packet using the previously built miniflow. This commit adds IPv6 profile specific hashing which uses fixed offsets into the packet to improve hashing performance. Signed-off-by: Kumar Amber

[ovs-dev] [PATCH v8 3/4] dpif-netdev/mfex: Add AVX512 ipv6 traffic profiles

2022-05-26 Thread Kumar Amber
Add AVX512 Ipv6 optimized profile for vlan/IPv6/UDP and vlan/IPv6/TCP, IPv6/UDP and IPv6/TCP. MFEX autovalidaton test-case already has the IPv6 support for validating against the scalar mfex. Signed-off-by: Kumar Amber Signed-off-by: Harry van Haaren Co-authored-by: Harry van Haaren --- v8

[ovs-dev] [PATCH v8 2/4] mfex_avx512: Calculate miniflow_bits at compile time.

2022-05-26 Thread Kumar Amber
The patch removes magic numbers from miniflow_bits and calculates the bits at compile time. This also makes it easier to handle any ABI changes. Signed-off-by: Kumar Amber --- lib/dpif-netdev-extract-avx512.c | 21 + 1 file changed, 17 insertions(+), 4 deletions(-) diff

[ovs-dev] [PATCH v8 1/4] mfex_avx512: Calculate pkt offsets at compile time.

2022-05-26 Thread Kumar Amber
The patch removes magic numbers pkt offsets and minimum packet lenght and instead calculate it at compile time. Signed-off-by: Kumar Amber --- v8: - Rename offset defines. --- --- lib/dpif-netdev-extract-avx512.c | 29 + 1 file changed, 21 insertions(+), 8 deletions

[ovs-dev] [PATCH v8 0/4] MFEX Optimizations IPv6 + Hashing Optimizations

2022-05-26 Thread Kumar Amber
: - rebase to master. v2: - fix the CI build. - fix check-patch for co-author. --- Kumar Amber (4): mfex_avx512: Calculate pkt offsets at compile time. mfex_avx512: Calculate miniflow_bits at compile time. dpif-netdev/mfex: Add AVX512 ipv6 traffic profiles dpif-netdev/mfex: Add ipv6 profile based

[ovs-dev] [PATCH v5] tests/mfex: Improve pcap script for mfex tests.

2022-05-24 Thread Kumar Amber
The mfex pcap generation script is improved for varied length traffic and also removes the hard coded mfex_pcap and instead uses the script itself to generate complex traffic patterns for testing. Signed-off-by: Kumar Amber Acked-by: Cian Ferriter --- v5: - fix mac and ip address generation

[ovs-dev] [PATCH v2 5/5] dpif-netdev-avx512: Add inner packet handling to dpif.

2022-05-24 Thread Kumar Amber
This patch adds the necessary changes required to support tunnel packet types in avx512 dpif. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- lib/dpif-netdev-avx512.c | 20 ++-- 1 file changed, 14 insertions(+), 6 deletions(-) diff

[ovs-dev] [PATCH v2 4/5] dpif-netdev: Add function pointer for dpif re-circulate.

2022-05-24 Thread Kumar Amber
The patch adds and re-uses the dpif set command to set the function pointers to be used to switch between different inner dpifs. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- lib/dpif-netdev-private-dpif.c | 53

[ovs-dev] [PATCH v2 3/5] dpif-netdev-avx512: Refactor avx512 dpif and create new APIs.

2022-05-24 Thread Kumar Amber
This Patch creates new APIs for avx512 dpif. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- lib/dpif-netdev-avx512.c | 32 +++- lib/dpif-netdev-private-dpif.c | 4 ++-- lib/dpif-netdev-private-dpif.h | 12

[ovs-dev] [PATCH v2 2/5] dpif-netdev: Refactor hash function to own header.

2022-05-24 Thread Kumar Amber
The refactor allows us to use hash function accross multiple files which was earlier restricted to dpif-netdev.c only. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- lib/dpif-netdev-private-dpcls.h | 23 +++ lib/dpif-netdev

[ovs-dev] [PATCH v2 0/5] DPIF AVX512 Recirculation

2022-05-24 Thread Kumar Amber
The patch adds support for recirculation of packets in AVX512 DPIF which would allow for processing tunneled packets. --- V2: * Split DPIF AVX512 into separate patchset. --- Kumar Amber (5): dpif-netdev: Refactor per thread recirc data allocation. dpif-netdev: Refactor hash function to own

[ovs-dev] [PATCH v2 1/5] dpif-netdev: Refactor per thread recirc data allocation.

2022-05-24 Thread Kumar Amber
The refactor allows us to use *recirc_depth_get() to obtain the depth across ovs which was previously limited to only dpif-netdev.c. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- lib/dpif-netdev-private-dpif.c | 2 ++ lib/dpif-netdev-private-dpif.h

[ovs-dev] [PATCH v4] tests/mfex: Improve pcap script for mfex tests.

2022-05-24 Thread Kumar Amber
The mfex pcap generation script is improved for varied length traffic and also removes the hard coded mfex_pcap and instead uses the script itself to generate complex traffic patterns for testing. Signed-off-by: Kumar Amber Acked-by: Cian Ferriter --- v4: - Fix MAC and L4 ports to a value

[ovs-dev] [PATCH v3] tests/mfex: Improve pcap script for mfex tests.

2022-05-18 Thread Kumar Amber
The mfex pcap generation script is improved for varied length traffic and also removes the hard coded mfex_pcap and instead uses the script itself to generate complex traffic patterns for testing. Signed-off-by: Kumar Amber Acked-by: Cian Ferriter --- v3: - Fix comments(Eelco). - Script

[ovs-dev] [PATCH v1] Pmd.at: fix dpcls and dpif configuration test cases.

2022-05-17 Thread Kumar Amber
is seen with dpif where re-arranging the get command after set makes it consistent across any builds. Fixes: cc0a87b11c (pmd.at: Add test-cases for DPCLS and DPIF commands.) Signed-off-by: Kumar Amber --- tests/pmd.at | 15 --- 1 file changed, 4 insertions(+), 11 deletions(-) diff

[ovs-dev] [PATCH v2] tests/mfex: Improve pcap script for mfex tests.

2022-05-11 Thread Kumar Amber
The mfex pcap generation script is improved for varied length traffic and also removes the hard coded mfex_pcap and instead uses the script itself to generate complex traffic patterns for testing. Signed-off-by: Kumar Amber Acked-by: Cian Ferriter --- v2: - Add huge page test-skip. - Change

[ovs-dev] [PATCH v7] dpcls: Change info-get function to fetch dpcls usage stats.

2022-05-11 Thread Kumar Amber
, Priority: 3) Test case to verify changes: 1061: PMD - dpcls configuration ok Signed-off-by: Kumar Amber Signed-off-by: Harry van Haaren Signed-off-by: Eelco Chaudron Co-authored-by: Harry van Haaren Co-authored-by: Eelco Chaudron Acked-by: Eelco Chaudron --- v7: - Rename dpcls

[ovs-dev] [PATCH v7 4/4] dpif-netdev/mfex: Add ipv6 profile based hashing.

2022-05-05 Thread Kumar Amber
For packets which don't already have a hash calculated, miniflow_hash_5tuple() calculates the hash of a packet using the previously built miniflow. This commit adds IPv6 profile specific hashing which uses fixed offsets into the packet to improve hashing performance. Signed-off-by: Kumar Amber

[ovs-dev] [PATCH v7 3/4] dpif-netdev/mfex: Add AVX512 ipv6 traffic profiles

2022-05-05 Thread Kumar Amber
Add AVX512 Ipv6 optimized profile for vlan/IPv6/UDP and vlan/IPv6/TCP, IPv6/UDP and IPv6/TCP. MFEX autovalidaton test-case already has the IPv6 support for validating against the scalar mfex. Signed-off-by: Kumar Amber Signed-off-by: Harry van Haaren Co-authored-by: Harry van Haaren --- v7

[ovs-dev] [PATCH v7 1/4] mfex_avx512: Calculate pkt offsets at compile time.

2022-05-05 Thread Kumar Amber
The patch removes magic numbers pkt offsets and minimum packet lenght and instead calculate it at compile time. Signed-off-by: Kumar Amber --- lib/dpif-netdev-extract-avx512.c | 28 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/lib/dpif-netdev

[ovs-dev] [PATCH v7 2/4] mfex_avx512: Calculate miniflow_bits at compile time.

2022-05-05 Thread Kumar Amber
The patch removes magic numbers from miniflow_bits and calculates the bits at compile time. This also makes it easier to handle any ABI changes. Signed-off-by: Kumar Amber --- lib/dpif-netdev-extract-avx512.c | 21 + 1 file changed, 17 insertions(+), 4 deletions(-) diff

[ovs-dev] [PATCH v7 0/4] MFEX Optimizations IPv6 + Hashing Optimizations

2022-05-05 Thread Kumar Amber
-author. --- Kumar Amber (4): mfex_avx512: Calculate pkt offsets at compile time. mfex_avx512: Calculate miniflow_bits at compile time. dpif-netdev/mfex: Add AVX512 ipv6 traffic profiles dpif-netdev/mfex: Add ipv6 profile based hashing. NEWS | 6 +- lib

[ovs-dev] [PATCH v3 3/3] flow: Add autovalidator support to miniflow_extract.

2022-04-27 Thread Kumar Amber
Signed-off-by: Kumar Amber --- v3: - Fix comments from Cian. --- --- lib/dpif-netdev-private-extract.c | 8 lib/flow.c| 34 ++- lib/flow.h| 4 3 files changed, 41 insertions(+), 5 deletions(-) diff --git

[ovs-dev] [PATCH v3 2/3] flow: Refactor miniflow_extract into api.

2022-04-27 Thread Kumar Amber
anything as buff array is still followed by the mf bit map inside netdev_flow_key, thus there wont be any impact on offset calculations which were done earlier. Signed-off-by: Kumar Amber --- v3: - Fix comments from Cian. --- --- lib/dpif-netdev-avx512.c | 2 +- lib/dpif-netdev-private

[ovs-dev] [PATCH v3 1/3] dpif-netdev: Refactor per thread recirc data allocation.

2022-04-27 Thread Kumar Amber
The refactor allows us to use *recirc_depth_get() to obtain the depth across ovs which was previously limited to only dpif-netdev.c. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- lib/dpif-netdev-private-dpif.c | 2 ++ lib/dpif-netdev-private-dpif.h

[ovs-dev] [PATCH v3 0/3] Miniflow Extract Testing Improvements

2022-04-27 Thread Kumar Amber
The patch-set introduces changes which would improve the testing of miniflow_extract for AVX512 based miniflow_extract optimizations whithout affecting scalar code path. --- v3: - Fix comments from Cian. --- Kumar Amber (3): dpif-netdev: Refactor per thread recirc data allocation. flow

[ovs-dev] [PATCH v10] dpif-netdev/mfex: Add ipv4 profile based hashing.

2022-04-12 Thread Kumar Amber
Haaren Co-authored-by: Harry van Haaren Signed-off-by: Ilya Maximets Co-authored-by: Ilya Maximets Signed-off-by: Kumar Amber Acked-by: Cian Ferriter --- v10: - Make the hahsing function generic and independent of magic numbers. v9: - Use memcpy in place of typecast to fix memory alingment. v8

[ovs-dev] [PATCH v1] tests/mfex: Improve pcap script for mfex tests.

2022-04-12 Thread Kumar Amber
The mfex pcap generation script is improved for varied length traffic and also removes the hard coded mfex_pcap and instead uses the script itself to generate complex traffic patterns for testing. Signed-off-by: Kumar Amber Acked-by: Cian Ferriter --- tests/automake.mk | 1 - tests

[ovs-dev] [PATCH v2] dpcls: Add the dpcls subtable lookup function in flow dump.

2022-04-11 Thread Kumar Amber
The patch adds the subtable lookup name to the existing dp-extra-info mentioned below: dp-extra-info:miniflow_bits(18,4), lookup(generic) dp-extra-info:miniflow_bits(9,4), lookup(avx512_gather) Suggested-by: Ilya Maximets Signed-off-by: Kumar Amber --- v2: - Add RCU protection

[ovs-dev] [PATCH v9 4/4] tests/mfex: Improve pcap script for mfex tests.

2022-04-06 Thread Kumar Amber
The mfex pcap generation script is improved for varied length traffic and also removes the hard coded mfex_pcap and instead uses the script itself to generate complex traffic patterns for testing. Signed-off-by: Kumar Amber Acked-by: Cian Ferriter --- v8: - Reduce IO writes. -- --- tests

[ovs-dev] [PATCH v9 3/4] dpif-netdev/mfex: Avoid hashing when opt mfex called.

2022-04-06 Thread Kumar Amber
This patch avoids calculating the software hash of the packet again if the optimized miniflow-extract hit. In cases of scalar miniflow extract, the normal hashing calculation is performed. Signed-off-by: Kumar Amber Acked-by: Cian Ferriter --- lib/dpif-netdev-avx512.c | 6 +++--- 1 file

[ovs-dev] [PATCH v9 2/4] dpif-netdev/mfex: Add packet hash check to autovalidator.

2022-04-06 Thread Kumar Amber
. The autovalidator was already calling that code, we just add the checks and scalar hashing in this commit. Signed-off-by: Kumar Amber Acked-by: Cian Ferriter --- v8: - Fix hash validation. --- --- lib/dpif-netdev-private-extract.c | 24 +--- 1 file changed, 17 insertions(+), 7 deletions

[ovs-dev] [PATCH v9 1/4] dpif-netdev/mfex: Add ipv4 profile based hashing.

2022-04-06 Thread Kumar Amber
For packets which don't already have a hash calculated, miniflow_hash_5tuple() calculates the hash of a packet using the previously built miniflow. This commit adds IPv4 profile specific hashing which uses fixed offsets into the packet to improve hashing performance. Signed-off-by: Kumar Amber

[ovs-dev] [PATCH v9 0/4] IPv4 Hashing AVX512 Optimizations

2022-04-06 Thread Kumar Amber
in the Patchset. v5: - Add Ipv6 and TCP packet length checks. v4: - rebase to master. - use static key lenghts for different packet types. v3: - rebase to master. v2: - fix the CI build. - fix check-patch for co-author. --- Kumar Amber (4): dpif-netdev/mfex: Add ipv4 profile based hashing. dpif

[ovs-dev] [PATCH v8 4/4] tests/mfex: Improve pcap script for mfex tests.

2022-04-01 Thread Kumar Amber
The mfex pcap generation script is improved for varied length traffic and also removes the hard coded mfex_pcap and instead uses the script itself to generate complex traffic patterns for testing. Signed-off-by: Kumar Amber --- v8: - Reduce IO writes. -- --- tests/automake.mk | 1

[ovs-dev] [PATCH v8 3/4] dpif-netdev/mfex: Avoid hashing when opt mfex called.

2022-04-01 Thread Kumar Amber
This patch avoids calculating the software hash of the packet again if the optimized miniflow-extract hit. In cases of scalar miniflow extract, the normal hashing calculation is performed. Signed-off-by: Kumar Amber --- lib/dpif-netdev-avx512.c | 6 +++--- 1 file changed, 3 insertions(+), 3

[ovs-dev] [PATCH v8 2/4] dpif-netdev/mfex: Add packet hash check to autovalidator.

2022-04-01 Thread Kumar Amber
. The autovalidator was already calling that code, we just add the checks and scalar hashing in this commit. Signed-off-by: Kumar Amber --- v8: - Fix hash validation. --- --- lib/dpif-netdev-private-extract.c | 24 +--- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/lib/dpif

[ovs-dev] [PATCH v8 1/4] dpif-netdev/mfex: Add ipv4 profile based hashing.

2022-04-01 Thread Kumar Amber
For packets which don't already have a hash calculated, miniflow_hash_5tuple() calculates the hash of a packet using the previously built miniflow. This commit adds IPv4 profile specific hashing which uses fixed offsets into the packet to improve hashing performance. Signed-off-by: Kumar Amber

[ovs-dev] [PATCH v8 0/4] IPv4 Hashing AVX512 Optimizations

2022-04-01 Thread Kumar Amber
: - rebase to master. - use static key lenghts for different packet types. v3: - rebase to master. v2: - fix the CI build. - fix check-patch for co-author. --- Kumar Amber (4): dpif-netdev/mfex: Add ipv4 profile based hashing. dpif-netdev/mfex: Add packet hash check to autovalidator. dpif-netdev/mfex

[ovs-dev] [PATCH v6] dpcls: Change info-get function to fetch dpcls usage stats.

2022-03-29 Thread Kumar Amber
, Priority: 3) Test case to verify changes: 1021: PMD - dpcls configuration ok Signed-off-by: Kumar Amber Signed-off-by: Harry van Haaren Signed-off-by: Eelco Chaudron Co-authored-by: Harry van Haaren Co-authored-by: Eelco Chaudron Acked-by: Eelco Chaudron --- v6: - Rebase

[ovs-dev] [PATCH v2 4/4] miniflow_extract: Add autovalidator support to miniflow_extract.

2022-03-27 Thread Kumar Amber
Signed-off-by: Kumar Amber --- lib/dpif-netdev-private-extract.c | 4 ++-- lib/flow.c| 24 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/lib/dpif-netdev-private-extract.c b/lib/dpif-netdev-private-extract.c index 8538d069f..0d7091

[ovs-dev] [PATCH v2 3/4] Miniflow_extract: Refactor miniflow_extract into api.

2022-03-27 Thread Kumar Amber
Miniflow extract used to takes the ABI parameter struct miniflow which was removed and added inside the struct netdev_flow_key and at many places temperory structs were created inside the functions which could be cleaned in favour of a uniform API. Signed-off-by: Kumar Amber --- lib/dpif-netdev

[ovs-dev] [PATCH v2 2/4] dpif-netdev: Refactor hashing function.

2022-03-27 Thread Kumar Amber
The changes moves the get_rss hashing function to its own .h files so that it can be used accross ovs which was previously only limited to dpif-netdev.c. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- lib/dpif-netdev-private-dpcls.h | 23

[ovs-dev] [PATCH v2 1/4] dpif-netdev: Refactor per thread recirc data allocation.

2022-03-27 Thread Kumar Amber
The refactor allows us to use *recirc_depth_get() to obtain the depth across ovs which was previously limited to only dpif-netdev.c. Signed-off-by: Kumar Amber Signed-off-by: Cian Ferriter Co-authored-by: Cian Ferriter --- lib/dpif-netdev-private-dpif.c | 2 ++ lib/dpif-netdev-private-dpif.h

[ovs-dev] [PATCH v2 0/4] Miniflow Extract Testing Improvements

2022-03-27 Thread Kumar Amber
The patch-set introduces changes which would improve the testing of miniflow_extract for AVX512 based miniflow_extract optimizations whithout affecting scalar code path. Kumar Amber (4): dpif-netdev: Refactor per thread recirc data allocation. dpif-netdev: Refactor hashing function

[ovs-dev] [PATCH v7 4/4] tests/mfex: Improve pcap script for mfex tests.

2022-03-23 Thread Kumar Amber
The mfex pcap generation script is improved for varied length traffic and also removes the hard coded mfex_pcap and instead uses the script itself to generate complex traffic patterns for testing. Signed-off-by: Kumar Amber --- tests/automake.mk | 1 - tests/mfex_fuzzy.py | 55

[ovs-dev] [PATCH v7 1/4] dpif-netdev/mfex: Add ipv4 profile based hashing.

2022-03-23 Thread Kumar Amber
This commit adds IPv4 profile specific hashing which uses fixed offsets into the packet to improve hashing performance. Signed-off-by: Kumar Amber Signed-off-by: Harry van Haaren Co-authored-by: Harry van Haaren --- v4: - Use pre-defined hash length values. v3: - Fix check-patch sign-offs

  1   2   3   4   >