The driver was passing to the mbuf Rx queue ID instead of hash received
from the device. Now, the RSS hash from the Rx descriptor is being set.

Fixes: 1173fca25af9 ("ena: add polling-mode driver")
Cc: sta...@dpdk.org

Signed-off-by: Stewart Allen <allen...@amazon.com>
Acked-by: Michal Krawczyk <m...@semihalf.com>
---
 drivers/net/ena/ena_ethdev.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ena/ena_ethdev.c b/drivers/net/ena/ena_ethdev.c
index 186ab0e6b..191153a8f 100644
--- a/drivers/net/ena/ena_ethdev.c
+++ b/drivers/net/ena/ena_ethdev.c
@@ -1910,7 +1910,7 @@ static uint16_t eth_ena_recv_pkts(void *rx_queue, struct 
rte_mbuf **rx_pkts,
 
                /* fill mbuf attributes if any */
                ena_rx_mbuf_prepare(mbuf_head, &ena_rx_ctx);
-               mbuf_head->hash.rss = (uint32_t)rx_ring->id;
+               mbuf_head->hash.rss = ena_rx_ctx.hash;
 
                /* pass to DPDK application head mbuf */
                rx_pkts[recv_idx] = mbuf_head;
-- 
2.14.1

Reply via email to