On Thu, Oct 10, 2019 at 11:27:53AM +0300, Andrew Rybchenko wrote: > On 10/10/19 11:23 AM, David Marchand wrote: > > On Thu, Oct 10, 2019 at 10:14 AM Andrew Rybchenko > > <arybche...@solarflare.com> wrote: > > > On 10/10/19 10:42 AM, Thomas Monjalon wrote: > > > > 09/10/2019 13:24, Andrew Rybchenko: > > > > > On 10/9/19 1:41 PM, Tiwei Bie wrote: > > > > > > My understanding is that, setting mq_mode to ETH_MQ_RX_NONE means > > > > > > no method is enforced on how to route packets to MQs. > > > > > I'm not sure. It is definitely a place to be improved in > > > > > ethdev documentation. Thomas, Ferruh, what do you think? > > > > > Is it really a definition of ETH_MQ_RX_NONE? > > > > I think it means everything go to queue 0. > > > I understand it this way as well. > > > > > > > The comment says no DCB, RSS or VMDQ. > > > > It looks like the "NONE" value has been abused for some custom steering. > > > > We have two options: > > > > - document NONE as a possible case of custom steering > > > > - add a new CUSTOM value > > > I'd prefer to say that ETH_MQ_RX_RSS with rss_hf equal to 0 means > > > unspecified/unknown steering. If application just want to spread > > > traffic across many Rx queues, it is natural choice to say that > > > it want RSS, but do not care about spreading algorithm etc. > > > It allows driver use recommended defaults if rss_hf is controllable, > > > or just spread in virtio case. > > RSS is about maintaining affinity of a "flow" (as in packets sharing > > the same l3/l4 tuples) to a specific queue. > > Here, we can have packets from a same flow on any queue depending on > > what happened on the vhost side. > > Interesting. I'd like to know a bit more about it. I didn't know that > it is so unstable. Could someone who knows the topic well add > a bit more information about it.
The spec defined automatic steering [1], but it's not very strict for the device. So it depends on the implementation. [1] https://github.com/oasis-tcs/virtio-spec/commit/f7020384521e5938cdd1351270b32b143f070d00