numam-dpdk/drivers/net/mlx5
Michael Baum e71e90938b net/mlx5: fix crash in NVGRE item translation
The flow_dv_translate_item_nvgre function add NVGRE item to matcher and
to the value.
It defines a pointer named nvrge_m that receives the item's mask into
it, and then copies some of it to the matcher.

Before copying, it checks for mask validation, and in case the mask is
NULL the function gives it a pointer to rte_flow_item_nvgre_mask.
However, the function calls from the vni mask's field before the check,
and if there is no mask, it actually does dereference to the NULL
pointer and indeed the program crashes with segfault.

Move the call from the vni field to post-validation.

Fixes: cd18e1b72f ("net/mlx5: fix build on Arm")
Cc: stable@dpdk.org

Signed-off-by: Michael Baum <michaelba@mellanox.com>
Acked-by: Matan Azrad <matan@mellanox.com>
2020-07-30 00:41:23 +02:00
..
linux common/mlx5: remove class check from class drivers 2020-07-28 19:01:30 +02:00
Makefile common/mlx5: register class drivers through common layer 2020-07-28 19:01:30 +02:00
meson.build net/mlx5: refactor multi-process communication 2020-07-21 15:46:30 +02:00
mlx5_defs.h net/mlx5: introduce clock queue service routine 2020-07-21 15:44:36 +02:00
mlx5_ethdev.c net/mlx5: convert control path memory to unified malloc 2020-07-21 15:44:36 +02:00
mlx5_flow_dv.c net/mlx5: fix crash in NVGRE item translation 2020-07-30 00:41:23 +02:00
mlx5_flow_meter.c net/mlx5: convert control path memory to unified malloc 2020-07-21 15:44:36 +02:00
mlx5_flow_verbs.c net/mlx5: fix tunnel flow priority 2020-07-21 15:46:30 +02:00
mlx5_flow.c net/mlx5: fix initialization of steering registers 2020-07-30 00:41:23 +02:00
mlx5_flow.h net/mlx5: fix tunnel flow priority 2020-07-21 15:46:30 +02:00
mlx5_mac.c common/mlx5: remove inclusion of Verbs header files 2020-07-21 15:46:30 +02:00
mlx5_mr.c common/mlx5: remove inclusion of Verbs header files 2020-07-21 15:46:30 +02:00
mlx5_mr.h common/mlx5: remove inclusion of Verbs header files 2020-07-21 15:46:30 +02:00
mlx5_rss.c common/mlx5: remove inclusion of Verbs header files 2020-07-21 15:46:30 +02:00
mlx5_rxmode.c common/mlx5: remove inclusion of Verbs header files 2020-07-21 15:46:30 +02:00
mlx5_rxq.c net/mlx5: fix premature disabling of interrupt 2020-07-30 00:41:22 +02:00
mlx5_rxtx_vec_altivec.h net/mlx5: convert Rx timestamps in real-time format 2020-07-21 15:44:36 +02:00
mlx5_rxtx_vec_neon.h net/mlx5: convert Rx timestamps in real-time format 2020-07-21 15:44:36 +02:00
mlx5_rxtx_vec_sse.h net/mlx5: convert Rx timestamps in real-time format 2020-07-21 15:44:36 +02:00
mlx5_rxtx_vec.c common/mlx5: remove inclusion of Verbs header files 2020-07-21 15:46:30 +02:00
mlx5_rxtx_vec.h common/mlx5: refactor memory management 2020-04-21 13:57:08 +02:00
mlx5_rxtx.c common/mlx5: remove inclusion of Verbs header files 2020-07-21 15:46:30 +02:00
mlx5_rxtx.h net/mlx5: add queue start and stop 2020-07-21 15:46:30 +02:00
mlx5_stats.c net/mlx5: provide send scheduling error statistics 2020-07-21 15:44:36 +02:00
mlx5_trigger.c net/mlx5: refactor multi-process communication 2020-07-21 15:46:30 +02:00
mlx5_txpp.c net/mlx5: replace Linux specific calls 2020-07-21 15:46:30 +02:00
mlx5_txq.c net/mlx5: add queue start and stop 2020-07-21 15:46:30 +02:00
mlx5_utils.c net/mlx5: convert control path memory to unified malloc 2020-07-21 15:44:36 +02:00
mlx5_utils.h net/mlx5: convert control path memory to unified malloc 2020-07-21 15:44:36 +02:00
mlx5_vlan.c common/mlx5: remove inclusion of Verbs header files 2020-07-21 15:46:30 +02:00
mlx5.c common/mlx5: register class drivers through common layer 2020-07-28 19:01:30 +02:00
mlx5.h net/mlx5: fix counter query 2020-07-30 00:41:23 +02:00
rte_pmd_mlx5_version.map net/mlx5: support fine grain dynamic flag 2020-02-05 09:51:20 +01:00
rte_pmd_mlx5.h net/mlx5: support fine grain dynamic flag 2020-02-05 09:51:20 +01:00