"Michael S. Tsirkin" <m...@redhat.com> writes:
> On Sun, Apr 14, 2013 at 11:59:42AM -0400, Sasha Levin wrote:
>> On 04/14/2013 11:53 AM, Michael S. Tsirkin wrote:
>> >> > 
>> >> > Initializing them only when they're actually needed will do the trick 
>> >> > here.
>> > Not initializing, adding the buffers. In the current spec, initialization
>> > is always done before DRIVER_OK.
>> 
>> Yeah, that's better, but we're going to need a spec change either way since 
>> even
>> adding the buffers is specifically stated to happen before DRIVER_OK:
>> 
>> """
>>      6. The receive virtqueues should be filled with receive buffers. This 
>> is described
>> in detail below in “Setting Up Receive Buffers”.
>> """
>> 
>> Thanks,
>> Sasha
>
> Yes but that's a minor point, specific to virio-net.
> The main point was to ensure that VQs should have buffers before they get
> any packets.
>
> OTOH VQ init bere DRIVER_OK is a generic virtio thing: DRIVER_OK means
> we can start sending interrupts and we expect driver to be ready to get
> them.
>
> Let's solve the real problem with buffers, a couple of pages per VQ
> shouldn't be an issue.

Yeah, let's not populate the extra virtqueues until someone turns
multiqueue on.

I appended to the last paragraph under Setting Up Receive Buffers:

        If VIRTIO_NET_F_MQ is negotiated, each of receiveq0...receiveqN that
        will be used should be populated with receive buffers

Added: 
       before multiqueue is activated (See [sub:Automatic-receive-steering]).

Cheers,
Rusty.
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to