[dpdk-dev] [PATCH 3/3] net/virtio: reject unsupported Rx multi queue modes

Andrew Rybchenko arybchenko at solarflare.com
Thu Oct 10 10:27:53 CEST 2019


On 10/10/19 11:23 AM, David Marchand wrote:
> On Thu, Oct 10, 2019 at 10:14 AM Andrew Rybchenko
> <arybchenko at 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.

> I prefer we describe this behavior as something else than RSS.



More information about the dev mailing list