The hash field in struct gve_rx_compl_desc_dqo defined in
gve_desc_dqo.h has the type __le32. Therefore the hash must be
read in little endian rather than big endian.

Bugzilla ID: 1441

Signed-off-by: Shreesh Adiga <16567adigashre...@gmail.com>
---
 drivers/net/gve/gve_rx_dqo.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/gve/gve_rx_dqo.c b/drivers/net/gve/gve_rx_dqo.c
index f08b58c78d..5efcce3312 100644
--- a/drivers/net/gve/gve_rx_dqo.c
+++ b/drivers/net/gve/gve_rx_dqo.c
@@ -161,7 +161,7 @@ gve_rx_burst_dqo(void *rx_queue, struct rte_mbuf **rx_pkts, 
uint16_t nb_pkts)
                rxm->ol_flags = 0;
                rxm->ol_flags |= RTE_MBUF_F_RX_RSS_HASH |
                                gve_parse_csum_ol_flags(rx_desc, rxq->hw);
-               rxm->hash.rss = rte_be_to_cpu_32(rx_desc->hash);
+               rxm->hash.rss = rte_le_to_cpu_32(rx_desc->hash);
 
                rx_pkts[nb_rx++] = rxm;
                bytes += pkt_len;
-- 
2.44.2

Reply via email to