[dpdk-dev] [DPDK] lib/librte_ether: add comments RSS flags

Shahaf Shuler shahafs at mellanox.com
Sun Jan 7 07:32:58 CET 2018


Saturday, January 6, 2018 12:22 PM, Andrew Rybchenko:

[..]

> >   #define ETH_RSS_PORT               (1ULL << RTE_ETH_FLOW_PORT)
> > +/** Enable RSS offload on VXLAN packets */
> >   #define ETH_RSS_VXLAN              (1ULL << RTE_ETH_FLOW_VXLAN)
> > +/** Enable RSS offload on GENEVE packets */
> >   #define ETH_RSS_GENEVE             (1ULL << RTE_ETH_FLOW_GENEVE)
> > +/** Enable RSS offload on NVGRE packets */
> >   #define ETH_RSS_NVGRE              (1ULL << RTE_ETH_FLOW_NVGRE)
> >
> >   #define ETH_RSS_IP ( \
> 
> These comments just decode the define name and not that useful. What
> would be really useful here is specification of which fields of the packet
> headers are used to calculate hash especially in the case of tunnels.

+1.

Also maybe some more clarifications, for example:
1. What is the expected behavior when, for example, setting the ETH_RSS_IPV6_EX and regular IPv6 packet arrives? is RSS apply on it? 
2. What is the expected behavior from the PMD when not supporting one of the RSS types? 
     For example most of the DPDK examples uses ETH_RSS_IP [1], however very few devices actually supports each and every RSS type.
     Assuming such configuration returns with no error, what should application expect when unsupported packet type arrives. 

#define ETH_RSS_IP ( \                
        ETH_RSS_IPV4 | \              
        ETH_RSS_FRAG_IPV4 | \         
        ETH_RSS_NONFRAG_IPV4_OTHER | \
        ETH_RSS_IPV6 | \              
        ETH_RSS_FRAG_IPV6 | \         
        ETH_RSS_NONFRAG_IPV6_OTHER | \
        ETH_RSS_IPV6_EX)              

     




More information about the dev mailing list