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

Thomas Monjalon thomas at monjalon.net
Wed Jan 10 08:38:56 CET 2018


10/01/2018 03:15, Yang, Qiming:
> From: Thomas Monjalon [mailto:thomas at monjalon.net]
> > 07/01/2018 07:32, Shahaf Shuler:
> > > 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)
> > 
> > +1
> > We really need a detailed documentation of the.
> > 
> 
> I agree with your comments, but the same RSS configuration may have different behavior(RSS offload and input set) in different driver.

This is a bug!
The API must have the same meaning for all drivers.

> Adding driver specific information in rte_ethdev.h  is not suitable.
> So I think the best scheme is to update driver's document to detail the exact behavior and add reference doc here.
> 
> > It must be at least as detailed as lib/librte_mbuf/rte_mbuf_ptype.h.
> > Thanks



More information about the dev mailing list