Subject: Re: [PATCH 0/4] [RFC rev2] Implement multiqueue (RX & TX) virtio-net

From: Avi Kivity <[email-masked]>
Date: Wed, 13 Apr 2011 15:00:11 +0300

On 04/05/2011 06:08 PM, Krishna Kumar wrote:
> This patchset implements both RX and TX MQ. Patch against virtio-net,
> vhost and qemu are included.
>
> Changes from rev1:
> -------------------
> 1. vqs are allocated as: rx/tx, rx/tx, rx/tx, etc. Lot of code in
>     guest/host/qemu changes, but code becomes simpler.
> 2. vhost cache align of vhost_dev correctly.
> 3. virtio-net: cleanup properly on errors (eg detach buf for vq>0 as
>     pointed out by Micheal).
> 4. Minor changes:
> 	- Fixed some typos.
> 	- Changed vhost_get_thread_index to use MAX_VHOST_THREADS.
> 	- Removed VIRTIO_MAX_TXQS.
> 	- Changed capability to VIRTIO_NET_F_MULTIQUEUE.
> 	- Modified "numtxqs" in virtnet_info to "num_queue_pairs".
> 	  virtnet_info still has numtxqs as it is more convenient.
> 	- Moved code for VIRTIO_NET_F_CTRL_VLAN into probe function.
> 	- Improve check for return value of virtio_config_val().
> 	- Removed cache align directives in guest as it was redundant.
> 5. "If we have a wrapper to init all vqs, pls add a wrapper to clean up
>      all vqs as well": I haven't done this as some errors are very
>      specific to the failure location (and what was initialized till
>      then). So only those errors are cleaned up using goto's like the
>      rest of the code. I can change in next version if you feel this is
>      still required.
> 6.  "I think we should have free_unused_bufs that handles a single queue,
>      and call it in a loop": I haven't done this as I think the caller wants
>      all rx/tx queues to be cleaned up by calling this function.
>
> TODO's:
> --------
> 1. Reduce vectors for find_vqs().
> 2. Make vhost changes minimal. For now, I have restricted the number of
>     vhost threads to 4. This can be either made unrestricted; or if the
>     userspace vhost works, it can be removed altogether.
>
> Please review and provide feedback. I am travelling a bit in the next
> few days but will respond at the earliest.

Do you have an update to the virtio-pci spec for this?

-- 
error compiling committee.c: too many arguments to function