On Fri, Jan 11, 2019 at 10:39:27AM +0100, Jens Freimann wrote: > Patch 1 fixes a bug in virtio_pq_send_command(). When we wait for > a descriptor to be marked as used we need to consider that the ring > might have wrapped and use the previous wrap counter. > > Patch 2 reverts the patch to error out when cq is used with packed vq and > add support for packed virtqueues in control virtqueue code. > > v3->v4: > * it's enough to add to add packed vq feature bit to > unsupported_features if packed_vq=0, no need to explicitly add > it to device_features (Tiwei)
Sorry for not making myself clear previously. Just to make it clear to avoid more confusion: we shouldn't add it to device_features by ourselves because vhost backend may not support it. Otherwise, it's possible that the upper layer in virtio driver will see virtio-user's .get_features() report this feature while vhost backend doesn't support it. Thanks for the new version. > > v2->v3: > * squash revert patch into patch 2 > * add new patch 1 to fix a bug in driver code > * fix wrap handling code in virtio_user_handle_cq_packed > * in v2 I was using wrap counters and indexes from shared virtqueue, > fixed this and added wrap counters and used index to virtio_user code > * tested wrap around of ring > > v1->v2: > * split into two patches > * handle ring wrap correctly > * add to unsupported_features when packed_vq is 0 > > Jens Freimann (2): > net/virtio: check head desc with correct wrap counter > net/virtio-user: ctrl vq support for packed > > drivers/net/virtio/virtio_ethdev.c | 11 +- > .../net/virtio/virtio_user/virtio_user_dev.c | 102 ++++++++++++++++-- > .../net/virtio/virtio_user/virtio_user_dev.h | 15 ++- > drivers/net/virtio/virtio_user_ethdev.c | 56 +++++++++- > drivers/net/virtio/virtqueue.h | 10 +- > 5 files changed, 171 insertions(+), 23 deletions(-) > > -- > 2.17.2 >