[ovs-dev] [PATCH] netdev-dpdk: Do not flush tx queue which is shared among CPUs since it is always flushed

Daniele Di Proietto diproiettod at vmware.com
Mon Jun 8 17:28:17 UTC 2015


Thanks for figuring out this bug and for providing the patch!
I did a quick phy-phy test and the throughput looks the same.
I would be nice to fix the typo, as suggested by Mark. Otherwise

Acked-by: Daniele Di Proietto <diproiettod at vmware.com>

On 05/06/2015 13:27, "Gray, Mark D" <mark.d.gray at intel.com> wrote:

>> 
>
>> When tx queue is shared among CPUS,the pkts always be flush in
>
>> 'netdev_dpdk_eth_send'
>
>> So it is unnecessarily for flushing in netdev_dpdk_rxq_recv Otherwise
>>tx will
>
>> be accessed without locking
>
>
>
>Are you seeing a specific bug or is this just to account for a device with
>
>less queues than pmds?
>
>
>
>> 
>
>> Signed-off-by: Wei li <liw at dtdream.com>
>
>> ---
>
>>  lib/netdev-dpdk.c | 7 +++++--
>
>>  1 file changed, 5 insertions(+), 2 deletions(-)
>
>> 
>
>> diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index
>>63243d8..25e3a73
>
>> 100644
>
>> --- a/lib/netdev-dpdk.c
>
>> +++ b/lib/netdev-dpdk.c
>
>> @@ -892,8 +892,11 @@ netdev_dpdk_rxq_recv(struct netdev_rxq *rxq_,
>
>> struct dp_packet **packets,
>
>>      int nb_rx;
>
>> 
>
>>      /* There is only one tx queue for this core.  Do not flush other
>
>> -     * queueus. */
>
>> -    if (rxq_->queue_id == rte_lcore_id()) {
>
>> +     * queueus.
>
>
>
>s/queueus/queues
>
>
>
>> +     * Do not flush tx queue which is shared among CPUs
>
>> +     * since it is always flushed */
>
>> +    if (rxq_->queue_id == rte_lcore_id() &&
>
>> +		OVS_LIKELY(!dev->txq_needs_locking)) {
>
>>          dpdk_queue_flush(dev, rxq_->queue_id);
>
>
>
>Do you see any drop in performance in a simple phy-phy case before
>
>and after this patch?
>
>
>
>>      }
>
>> 
>
>> --
>
>> 1.9.5.msysgit.1
>
>> 
>
>> 
>
>> _______________________________________________
>
>> dev mailing list
>
>> dev at openvswitch.org
>
>> 
>>https://urldefense.proofpoint.com/v2/url?u=http-3A__openvswitch.org_mailm
>>an_listinfo_dev&d=BQIGaQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=
>>SmB5nZacmXNq0gKCC1s_Cw5yUNjxgD4v5kJqZ2uWLlE&m=8hJIL1g4dLpZrQqYAOhmAiQPzG2
>>yVTO86cpX5y0P5yI&s=jJzQtLvAvCqbaUUh3atsRiCCOanNzMRLdyJyHsqiuN4&e=
>
>_______________________________________________
>dev mailing list
>dev at openvswitch.org
>https://urldefense.proofpoint.com/v2/url?u=http-3A__openvswitch.org_mailma
>n_listinfo_dev&d=BQIGaQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=Sm
>B5nZacmXNq0gKCC1s_Cw5yUNjxgD4v5kJqZ2uWLlE&m=8hJIL1g4dLpZrQqYAOhmAiQPzG2yVT
>O86cpX5y0P5yI&s=jJzQtLvAvCqbaUUh3atsRiCCOanNzMRLdyJyHsqiuN4&e= 




More information about the dev mailing list