Commit 480b3e7
vdpa/mlx5: preserve CVQ vringh index
mlx5_vdpa does not preserve userland's view of vring base for the control
queue in the following sequence:
ioctl VHOST_SET_VRING_BASE
ioctl VHOST_VDPA_SET_STATUS VIRTIO_CONFIG_S_DRIVER_OK
mlx5_vdpa_set_status()
setup_cvq_vring()
vringh_init_iotlb()
vringh_init_kern()
vrh->last_avail_idx = 0;
ioctl VHOST_GET_VRING_BASE
To fix, restore the value of cvq->vring.last_avail_idx after calling
vringh_init_iotlb.
Fixes: 5262912 ("vdpa/mlx5: Add support for control VQ and MAC setting")
Signed-off-by: Steve Sistare <steven.sistare@oracle.com>
Acked-by: Eugenio Pérez <eperezma@redhat.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Message-Id: <1699014387-194368-1-git-send-email-steven.sistare@oracle.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>1 parent 2cc14f5 commit 480b3e7
1 file changed
Lines changed: 6 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2815 | 2815 | | |
2816 | 2816 | | |
2817 | 2817 | | |
2818 | | - | |
| 2818 | + | |
| 2819 | + | |
| 2820 | + | |
2819 | 2821 | | |
2820 | 2822 | | |
2821 | 2823 | | |
2822 | 2824 | | |
2823 | 2825 | | |
2824 | 2826 | | |
| 2827 | + | |
| 2828 | + | |
| 2829 | + | |
2825 | 2830 | | |
2826 | 2831 | | |
2827 | 2832 | | |
| |||
0 commit comments