[ovs-dev] OVS Offload Decision Proposal

David Miller davem at davemloft.net
Thu Mar 5 06:42:57 UTC 2015


From: Tom Herbert <therbert at google.com>
Date: Wed, 4 Mar 2015 21:20:41 -0800

> On Wed, Mar 4, 2015 at 9:00 PM, David Miller <davem at davemloft.net> wrote:
>> From: John Fastabend <john.fastabend at gmail.com>
>> Date: Wed, 04 Mar 2015 17:54:54 -0800
>>
>>> I think a set operation _is_ necessary for OVS and other
>>> applications that run in user space.
>>
>> It's necessary for the kernel to internally manage the chip
>> flow resources.
>>
>> Full stop.
>>
>> It's not being exported to userspace.  That is exactly the kind
>> of open ended, outside the model, crap we're trying to avoid
>> by putting everything into the kernel where we have consistent
>> mechanisms, well understood behaviors, and rules.
> 
> David,
> 
> Just to make sure everyone is on the same page... this discussion has
> been about where the policy of offload is implemented, not just who is
> actually sending config bits to the device. The question is who gets
> to decide how to best divvy up the finite resources of the device and
> network amongst various requestors. Is this what you're referring to?

I'm talking about only the kernel being able to make ->set() calls
through the flow manager API to the device.

Resource control is the kernel's job.

You cannot delegate this crap between ipv4 routing in the kernel,
L2 bridging in the kernel, and some user space crap.  It's simply
not going to happen.

All of the delegation of the hardware resource must occur in the
kernel.  Because only the kernel has a full view of all of the
resources and how each and every subsystem needs to use it.




More information about the dev mailing list