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

Yang, Qiming qiming.yang at intel.com
Tue Jan 9 04:20:30 CET 2018


> -----Original Message-----
> From: Shahaf Shuler [mailto:shahafs at mellanox.com]
> Sent: Sunday, January 7, 2018 2:33 PM
> To: Andrew Rybchenko <arybchenko at solarflare.com>; Yang, Qiming
> <qiming.yang at intel.com>; dev at dpdk.org; Thomas Monjalon
> <thomas at monjalon.net>
> Subject: RE: [dpdk-dev] [DPDK] lib/librte_ether: add comments RSS flags
> 
> 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.
> 
If the unsupported packet type arrives, RSS offload will not work. I'll detail the comments in the next version patch.
> #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