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
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
-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
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
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
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
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
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
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
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
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
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
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
.
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
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
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
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
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
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
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
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
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
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
.
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
:
- 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
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
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
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
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
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
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
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
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
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
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
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
, 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
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
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
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
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
-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
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
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
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
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
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
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
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
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
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
. 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
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
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
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
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
. 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
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
:
- 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
, 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
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
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
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
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
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
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
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 - 100 of 378 matches
Mail list logo