On 4/17/20 4:39 AM, Marvin Liu wrote:
> Defer shadow ring update introduces functional issue which has been
> described in Eugenio's fix patch.
> 
> The current implementation of vhost_net in packed vring tries to fill
> the shadow vector before send any actual changes to the guest. While
> this can be beneficial for the throughput, it conflicts with some
> bufferfloats methods like the linux kernel napi, that stops
> transmitting packets if there are too much bytes/buffers in the
> driver.
> 
> It also introduces performance issue when frontend run much faster than
> backend. Frontend may not be able to collect available descs when shadow
> update is deferred. That will harm RFC2544 throughput.
> 
> Appropriate choice is to remove deferred shadowed update method.
> Now shadowed used descs are flushed at the end of dequeue function.
> 
> Fixes: 31d6c6a5b820 ("vhost: optimize packed ring dequeue")
> Cc: sta...@dpdk.org
> 
> Signed-off-by: Marvin Liu <yong....@intel.com>
> Tested-by: Wang, Yinan <yinan.w...@intel.com>

Applied to dpdk-next-virtio/master

Thanks,
Maxime

Reply via email to