[ovs-dev] [PATCH v5] dpif-netdev: proper tx queue id
Ilya Maximets
i.maximets at samsung.com
Tue Oct 13 15:43:40 UTC 2015
On 13.10.2015 18:00, Daniele Di Proietto wrote:
>> @@ -2620,9 +2733,20 @@ pmd_load_queues(struct dp_netdev_pmd_thread *pmd,
>> poll_list[poll_cnt].rx = port->rxq[i];
>> poll_cnt++;
>> }
>> - index++;
>> + rx_index++;
>> }
>> +
>> + }
>> +
>> + n_txq = netdev_n_txq(port->netdev);
>> + /* Last queue reserved for non pmd threads */
>> + n_txq = n_txq == 1 ? 1 : n_txq - 1;
>> + for (i = 0; i < n_txq; i++) {
>> + if ((tx_index % n_pmds_on_numa) == pmd->index || n_txq
>> == 1)
>> + dp_netdev_pmd_add_txq(pmd, port, i);
>> + tx_index++;
>> }
>> +
>
> This code assigns more than one txq for each NIC to a pmd thread.
> Is this a wanted effect?
Yes.
>
> Also, the same txq can be assigned to multiple pmd threads on different
> NUMA sockets.
Thanks. I missed that.
>
> The logic should be different from rxq assignment:
> * rxq: each rxq should be assigned to one thread
> * txq: each thread should have its own txq for each netdev.
Agree. This is what I wanted to achieve. I'll prepare new version.
Best regards, Ilya Maximets.
More information about the dev
mailing list