Subject: Re: [PATCHv2 0/2] vhost: a kernel-level virtio server

From: Gregory Haskins <[email-masked]>
Date: Wed, 12 Aug 2009 07:56:05 -0400

Michael S. Tsirkin wrote:
> On Tue, Aug 11, 2009 at 07:49:37PM -0400, Gregory Haskins wrote:
>> Michael S. Tsirkin wrote:
>>> This implements vhost: a kernel-level backend for virtio,
>>> The main motivation for this work is to reduce virtualization
>>> overhead for virtio by removing system calls on data path,
>>> without guest changes. For virtio-net, this removes up to
>>> 4 system calls per packet: vm exit for kick, reentry for kick,
>>> iothread wakeup for packet, interrupt injection for packet.
>>>
>>> Some more detailed description attached to the patch itself.
>>>
>>> The patches are against 2.6.31-rc4.  I'd like them to go into linux-next
>>> and down the road 2.6.32 if possible.  Please comment.
>> I will add this series to my benchmark run in the next day or so.  Any
>> specific instructions on how to set it up and run?
>>
>> Regards,
>> -Greg
>>
> 
> 1. use a dedicated network interface with SRIOV, program mac to match
>    that of guest (for testing, you can set promisc mode, but that is
>    bad for performance)

Are you saying SRIOV is a requirement, and I can either program the
SRIOV adapter with a mac or use promis?  Or are you saying I can use
SRIOV+programmed mac OR a regular nic + promisc (with a perf penalty).

> 2. disable tso,gso,lro with ethtool

Out of curiosity, wouldnt you only need to disable LRO on the adapter,
since the other two (IIUC) are transmit path and are therefore
influenced by the skb's you generate in vhost?

> 3. add vhost=ethX

You mean via "ip link" I assume?

Regards,
-Greg