Re: [RFC PATCH 00/17] virtual-bus

From: Gregory Haskins
Date: Thu Apr 02 2009 - 08:28:47 EST


Avi Kivity wrote:
> Gregory Haskins wrote:
>
>
>
>>> Why does a kernel solution not need to know when a packet is
>>> transmitted?
>>>
>>>
>>
>> You do not need to know when the packet is copied (which I currently
>> do). You only need it for zero-copy (of which I would like to support,
>> but as I understand it there are problems with the reliability of proper
>> callback (i.e. skb->destructor).
>>
>> Its "fire and forget" :)
>>
>
> It's more of a "schedule and forget" which I think brings you the
> win. The host disables notifications and schedules the actual tx work
> (rx from the host's perspective). So now the guest and host continue
> producing and consuming packets in parallel. So long as the guest is
> faster (due to the host being throttled?), notifications continue to
> be disabled.
Yep, when the "producer::consumer" ratio is > 1, we mitigate signaling.
When its < 1, we signal roughly once per packet.

>
> If you changed your rx_isr() to process the packets immediately
> instead of scheduling, I think throughput would drop dramatically.
Right, that is the point. :) This is that "soft asic" thing I was
talking about yesterday.

-Greg


Attachment: signature.asc
Description: OpenPGP digital signature