[dpdk-dev] [PATCH] vhost: flush used->idx update before reading avail->flags

Luke Gorrie luke at snabb.co
Fri Apr 24 09:27:19 CEST 2015


On 24 April 2015 at 03:01, Linhaifeng <haifeng.lin at huawei.com> wrote:

> If not add memory fence what would happen? Packets loss or interrupt
> loss?How to test it ?
>

You should be able to test it like this:

1. Boot two Linux kernel (e.g. 3.13) guests.
2. Connect them via vhost switch.
3. Run continuous traffic between them (e.g. iperf).

I would expect that within a reasonable timeframe (< 1 hour) one of the
guests' network interfaces will hang indefinitely due to a missed interrupt.

You won't be able to reproduce this using DPDK guests because they are not
using the same interrupt suppression method.

This is a serious real-world problem. I wouldn't deploy the vhost
implementation without this fix.

Cheers,
-Luke


More information about the dev mailing list