vhost: fix interrupt suppression for the split ring
authorJiayu Hu <jiayu.hu@intel.com>
Sun, 17 Mar 2019 06:38:32 +0000 (14:38 +0800)
committerFerruh Yigit <ferruh.yigit@intel.com>
Wed, 20 Mar 2019 17:15:42 +0000 (18:15 +0100)
commit2f706027c8ee1bfcf4895cc35a42f0d2270dc819
tree9ae21696487b3bca31fe374e17fc442b29c5c8ca
parentbad78b4b8b23412f6007efd034de04b35c663a6f
vhost: fix interrupt suppression for the split ring

The VIRTIO_RING_F_EVENT_IDX feature of split ring might
be broken, as the value of signalled_used is invalid
after live migration, start up and virtio driver reload.
This patch fixes it by using signalled_used_valid.

In addition, this patch makes the VIRTIO_RING_F_EVENT_IDX
implementation of split ring match kernel backend to suppress
more interrupts.

Fixes: e37ff954405a ("vhost: support virtqueue interrupt/notification suppression")
Cc: stable@dpdk.org
Signed-off-by: Jiayu Hu <jiayu.hu@intel.com>
Tested-by: Yinan Wang <yinan.wang@intel.com>
Reviewed-by: Tiwei Bie <tiwei.bie@intel.com>
lib/librte_vhost/vhost.h
lib/librte_vhost/vhost_user.c