|
Revision tags: v22.03, v22.03-rc4 |
|
| #
fc547a92 |
| 10-Mar-2022 |
Gregory Etelson <[email protected]> |
app/testpmd: fix flow rule with flex input link
Testpmd reads flex item configuration from a JSON file. Flex item input link description is stored in testpmd flow item format. For example, `eth type
app/testpmd: fix flow rule with flex input link
Testpmd reads flex item configuration from a JSON file. Flex item input link description is stored in testpmd flow item format. For example, `eth type is 0x0800`. The item description is placed into a general testpmd CLI flow rule command template and parsed to convert string into flow item object.
The patch adds the `actions` section to the flow rule template.
Fixes: 59f3a8acbcdb ("app/testpmd: add flex item commands") Cc: [email protected]
Signed-off-by: Gregory Etelson <[email protected]> Acked-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
|
Revision tags: v22.03-rc3, v22.03-rc2, v22.03-rc1 |
|
| #
06c047b6 |
| 09-Feb-2022 |
Stephen Hemminger <[email protected]> |
remove unnecessary null checks
Functions like free, rte_free, and rte_mempool_free already handle NULL pointer so the checks here are not necessary.
Remove redundant NULL pointer checks before free
remove unnecessary null checks
Functions like free, rte_free, and rte_mempool_free already handle NULL pointer so the checks here are not necessary.
Remove redundant NULL pointer checks before free functions found by nullfree.cocci
Signed-off-by: Stephen Hemminger <[email protected]>
show more ...
|
|
Revision tags: v21.11, v21.11-rc4, v21.11-rc3, v21.11-rc2 |
|
| #
2d3d8401 |
| 26-Oct-2021 |
Gregory Etelson <[email protected]> |
app/testpmd: fix flex item flush
Testpmd provides 2 sets of flex item create and destroy functions One for hosts with JSON library. These functions parse flex item configuration stored in JSON file
app/testpmd: fix flex item flush
Testpmd provides 2 sets of flex item create and destroy functions One for hosts with JSON library. These functions parse flex item configuration stored in JSON file and create or destroy flex item object. The second functions set is for hosts without JSON library for compilation compatibility.
On hosts without JSON library, current implementation issues "no JSON library" notification on port close. The notification was triggered by port destructors that include flex items flush routine.
The patch introduces single implementation for testpmd flex item destroy.
Fixes: 59f3a8acbcdb ("app/testpmd: add flex item commands")
Signed-off-by: Gregory Etelson <[email protected]> Reviewed-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
|
Revision tags: v21.11-rc1 |
|
| #
59f3a8ac |
| 20-Oct-2021 |
Gregory Etelson <[email protected]> |
app/testpmd: add flex item commands
Network port hardware is shipped with fixed number of supported network protocols. If application must work with a protocol that is not included in the port hardw
app/testpmd: add flex item commands
Network port hardware is shipped with fixed number of supported network protocols. If application must work with a protocol that is not included in the port hardware by default, it can try to add the new protocol to port hardware.
Flex item or flex parser is port infrastructure that allows application to add support for a custom network header and offload flows to match the header elements.
Application must complete the following tasks to create a flow rule that matches custom header:
1. Create flow item object in port hardware. Application must provide custom header configuration to PMD. PMD will use that configuration to create flex item object in port hardware.
2. Create flex patterns to match. Flex pattern has a spec and a mask components, like a regular flow item. Combined together, spec and mask can target unique data sequence or a number of data sequences in the custom header. Flex patterns of the same flex item can have different lengths. Flex pattern is identified by unique handler value.
3. Create a flow rule with a flex flow item that references flow pattern.
Testpmd flex CLI commands are:
testpmd> flow flex_item create <port> <flex_id> <filename>
testpmd> set flex_pattern <pattern_id> \ spec <spec data> mask <mask data>
testpmd> set flex_pattern <pattern_id> is <spec_data>
testpmd> flow create <port> ... \ / flex item is <flex_id> pattern is <pattern_id> / ...
The patch works with the jansson library API. A new optional dependency on jansson library is added for testpmd. If jansson not detected the flex item functionality is disabled. Jansson development files must be present: jansson.pc, jansson.h libjansson.[a,so]
Signed-off-by: Gregory Etelson <[email protected]> Reviewed-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|