Subject: Re: Unable to create more than 1 guest virtio-net device using vhost-net backend

From: "Michael S. Tsirkin" <[email-masked]>
Date: Mon, 22 Mar 2010 20:16:23 +0200

On Sun, Mar 21, 2010 at 01:58:29PM +0200, Avi Kivity wrote:
> On 03/21/2010 01:34 PM, Michael S. Tsirkin wrote:
>> On Sun, Mar 21, 2010 at 12:29:31PM +0200, Avi Kivity wrote:
>>    
>>> On 03/21/2010 12:15 PM, Michael S. Tsirkin wrote:
>>>      
>>>>>> Nothing easy that I can see. Each device needs 2 of these.  Avi, Gleb,
>>>>>> any objections to increasing the limit to say 16?  That would give us
>>>>>> 5 more devices to the limit of 6 per guest.
>>>>>>
>>>>>>
>>>>>>            
>>>>> Increase it to 200, then.
>>>>>
>>>>>          
>>>> OK. I think we'll also need a smarter allocator
>>>> than bus->dev_count++ than we now have. Right?
>>>>
>>>>        
>>> No, why?
>>>      
>> We'll run into problems if devices are created/removed in random order,
>> won't we?
>>    
>
> unregister_dev() takes care of it.
>
>>> Eventually we'll want faster scanning than the linear search we employ
>>> now, though.
>>>      
>> Yes I suspect with 200 entries we will :). Let's just make it 16 for
>> now?
>>    
>
> Let's make it 200 and fix the performance problems later.  Making it 16  
> is just asking for trouble.

I did this and performance with vhost seems to become much more noisy,
and drop by about 10% on average, even though in practice only
a single device is created. Still trying to figure it out ...
Any idea?

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