On 2019/2/14 下午12:26, wexu@redhat.com wrote:
> From: Wei Xu <wexu@redhat.com>
>
> https://github.com/Whishay/qemu.git
>
> Userspace and vhost-net backend test has been done with upstream kernel
> in guest.
>
> v3->v4:
> - add version number to the subject of each patch.(mst)
>
> v2->v3:
> v2/01 - drop it since the header has been synchronized from kernel.(mst & jason)
> v3/01 - rename 'avail_wrap_counter' to 'last_avail_wrap_counter',
> 'event_wrap_counter' to 'avail_wrap_counter' to make it easier
> to understand.(Jason)
> - revise commit message.(Jason)
> v3/02 - split packed ring areas size calculation to next patch.(Jason)
> to not break bisect(Jason).
> v3/03 - initialize packed ring region with correct size and attribute.
> - remove unnecessary 'else' checks. (Jason)
> v3/06 - add commit log.
> - replace 'event_wrap-counter' with 'avail_wrap_counter'.
> - merge common memory cache size check to virtqueue_get_avail_bytes().(Jason)
> - revise memory barrier comment.(Jason)
> - check indirect descriptors by desc.len/sizeof(desc).(Jason)
> - flip wrap counter with '^=1'.(Jason)
> v3/07 - move desc.id/len initialization to the declaration.(Jason)
> - flip wrap counter '!' with '^=1'.(Jason)
> - add memory barrier comments in commit message.
> v3/08 - use offsetof() when writing cache.(Jason)
> - avoid duplicated memory region write when turning off event_idx
> supported notification.(Jason)
> - add commit log.(Jason)
> - add avail & last_avail wrap counter difference description in commit log.
> v3/09 - remove unnecessary used/avail idx/wrap-counter from subsection.
> - put new subsection to the end of vmstate_virtio.(Jason)
> - squash the two userspace and vhost-net migration patches in v2.(Jason)
> v3/10 - reword commit message.
> - this is a help not a bug fix so I would like to keep it as a
> separate patch still.(Proposed a merge it by Jason)
> - the virtqueue_fill() is also not like an API so I would prefer not
> to touch it, please correct me if I did not get it in the right
> way.(Proposed a squash by Jason)
> v3/11 - squash feature bits for user space and vhost kernel/user backends.
> - enable packed ring feature bit provision on host by default.(Jason)
>
> Wei Xu (11):
> virtio: rename structure for packed ring
> virtio: device/driver area size calculation helper for split ring
> virtio: initialize packed ring region
> virtio: initialize wrap counter for packed ring
> virtio: queue/descriptor check helpers for packed ring
> virtio: get avail bytes check for packed ring
> virtio: fill/flush/pop for packed ring
> virtio: event suppression support for packed ring
> virtio-net: update the head descriptor in a chain lastly
> virtio: migration support for packed ring
> virtio: CLI and provide packed ring feature bit by default
>
> hw/net/vhost_net.c | 2 +
> hw/net/virtio-net.c | 11 +-
> hw/virtio/virtio.c | 798 +++++++++++++++++++++++++++++++++++++++++----
> include/hw/virtio/virtio.h | 4 +-
> 4 files changed, 757 insertions(+), 58 deletions(-)
Looks like there's something missed in the series. e.g the support of:
virtqueue_unpop()
virtqueue_rewind()
Thanks