net/mlx5: fix missing attribute size for drop action
authorYongseok Koh <yskoh@mellanox.com>
Wed, 10 Jan 2018 17:50:38 +0000 (09:50 -0800)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 16 Jan 2018 17:47:49 +0000 (18:47 +0100)
Adding the size of ibv_flow_spec_action_drop is missing. This can cause
overflow when converting rte_flow to ibv_flow and thus corrupt memory.

Fixes: 8086cf08b2f0 ("net/mlx5: handle RSS hash configuration in RSS flow")
Cc: stable@dpdk.org
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
drivers/net/mlx5/mlx5_flow.c

index 305b2ec..ff9fd78 100644 (file)
@@ -868,6 +868,10 @@ priv_flow_convert_items_validate(struct priv *priv,
                                parser->queue[n].offset += cur_item->dst_sz;
                }
        }
+       if (parser->drop) {
+               parser->queue[HASH_RXQ_ETH].offset +=
+                       sizeof(struct ibv_flow_spec_action_drop);
+       }
        if (parser->mark) {
                for (i = 0; i != hash_rxq_init_n; ++i)
                        parser->queue[i].offset +=