|SUCCESS|dpdk-next-net-intel|ee9b1ca1ab| intel-Functional
sys_stv at intel.com
sys_stv at intel.com
Fri Feb 13 12:08:05 CET 2026
Test-Label: intel-Functional
Test-Status: SUCCESS
_Functional PASS_
DPDK git repo: dpdk-next-net-intel
commit ee9b1ca1abfb9777ee28aff5e4b53eb11b9acea0
Author: Anatoly Burakov <anatoly.burakov at intel.com>
Date: Fri Feb 13 09:10:14 2026 +0000
net/ice: fix memory leak in FDIR flow parsing
Currently, RAW pattern parsing will cause a `pkt_buf` buffer to be
allocated to store parsed RAW pattern bytes. All error paths handle the
deallocation correctly, and the buffer will then be passed to FDIR
filter create function which also handles the presence of the buffer
correctly, and it is also freed correctly in destroy function.
However, rte_flow_validate will go through the same code path, but will
not call FDIR create/destroy nor even store the pointer, because `meta`
variable inside the flow parsing function will be set to NULL, which
will cause this memory to be leaked (and memset(0)-ed next time we try
to create/validate another flow).
Fix it by freeing the `pkt_buf` when `meta` is NULL.
Additionally, the initial allocation was done using `ice_malloc` macro.
It does not affect anything as `ice_malloc` translates to `rte_zmalloc`
anyway but for consistency, change the allocation to `rte_zmalloc` as
well.
Fixes: 25be39cc1760 ("net/ice: enable protocol agnostic flow offloading in FDIR")
Cc: stable at dpdk.org
Signed-off-by: Anatoly Burakov <anatoly.burakov at intel.com>
Acked-by: Vladimir Medvedkin <vladimir.medvedkin at intel.com>
Smoke-Testing Summary : 31 Case Done, 31 Successful, 0 Failures
OS : Ubuntu 24.04.3 LTS
Kernel : 6.8.0-71-generic
GCC : 13.3.0-6ubuntu2~24.04
NIC : Ethernet Controller XL710 for 40GbE QSFP+
Target : x86_64-native-linuxapp-gcc
Test result details:
+-----------------+---------------------------------------------------+-------+
| suite | case | status|
+-----------------+---------------------------------------------------+-------+
| checksum_offload| test_do_not_insert_checksum_on_the_transmit_packet| passed|
| checksum_offload| test_hardware_checksum_check_ip_rx | passed|
| checksum_offload| test_hardware_checksum_check_ip_tx | passed|
| checksum_offload| test_hardware_checksum_check_l4_rx | passed|
| checksum_offload| test_hardware_checksum_check_l4_tx | passed|
| checksum_offload| test_insert_checksum_on_the_transmit_packet | passed|
| checksum_offload| test_rx_checksum_valid_flags | passed|
| checksum_offload| test_checksum_offload_with_vlan | n/a |
| dual_vlan | test_dual_vlan_priority_rxtx | passed|
| dual_vlan | test_vlan_filter_config | passed|
| dual_vlan | test_vlan_filter_table | passed|
| dual_vlan | test_vlan_insert_config | passed|
| dual_vlan | test_vlan_random_test | passed|
| dual_vlan | test_vlan_strip_config | passed|
| dual_vlan | test_vlan_synthetic_test | passed|
| dual_vlan | test_vlan_tpid_config | passed|
| dual_vlan | test_vlan_stripq_config | n/a |
| jumboframes | test_jumboframes_bigger_jumbo | passed|
| jumboframes | test_jumboframes_jumbo_jumbo | passed|
| jumboframes | test_jumboframes_jumbo_nojumbo | passed|
| jumboframes | test_jumboframes_normal_jumbo | passed|
| jumboframes | test_jumboframes_normal_nojumbo | passed|
| rxtx_offload | test_rxoffload_port_all | passed|
| rxtx_offload | test_rxoffload_port_cmdline | passed|
| rxtx_offload | test_txoffload_port | passed|
| rxtx_offload | test_txoffload_port_all | passed|
| rxtx_offload | test_txoffload_port_checksum | passed|
| rxtx_offload | test_txoffload_port_cmdline | passed|
| rxtx_offload | test_txoffload_port_multi_segs | passed|
| rxtx_offload | test_txoffload_queue | passed|
| rxtx_offload | test_rxoffload_queue | n/a |
+-----------------+---------------------------------------------------+-------+
DPDK STV team
More information about the test-report
mailing list