[dpdk-dev] Question about 'rxm->hash.rss' and 'mb->hash.fdir'

Min Hu (Connor) humin29 at huawei.com
Wed Jun 30 04:45:56 CEST 2021


Hi, all
	one question about 'rxm->hash.rss' and 'mb->hash.fdir'.

	In Rx recv packets function,
	'rxm->hash.rss' will report rss hash result from Rx desc.
	'rxm->hash.fdir' will report filter identifier from Rx desc.

	But function implementation differs from some PMDs. for example:
	i40e, MLX5 report the two at the same time if pkt_flags is set,like:
******************************************
		if (pkt_flags & PKT_RX_RSS_HASH) {
			rxm->hash.rss = 			rte_le_to_cpu_32(rxd.wb.qword0.hi_dword.rss);
		}
		if (pkt_flags & PKT_RX_FDIR) {
			mb->hash.fdir.hi =
		rte_le_to_cpu_32(rxdp->wb.qword3.hi_dword.fd_id);
		}
********************************************

	While, ixgbe only report one of the two. like:
******************************************
		if (likely(pkt_flags & PKT_RX_RSS_HASH))
			mb->hash.rss = rte_le_to_cpu_32(
			    rxdp[j].wb.lower.hi_dword.rss);
		else if (pkt_flags & PKT_RX_FDIR) {
			mb->hash.fdir.hash = rte_le_to_cpu_16(
			    rxdp[j].wb.lower.hi_dword.csum_ip.csum) &
			    IXGBE_ATR_HASH_MASK;
			mb->hash.fdir.id = rte_le_to_cpu_16(
			    rxdp[j].wb.lower.hi_dword.csum_ip.ip_id);
		}
********************************************
	So, what is application scenario for 'rxm->hash.rss' and 
'mb->hash.fdir', that is, why the two should be reported? How about 
reporting the two at the same time?
	Thanks for  your reply.


More information about the dev mailing list