[ovs-dev] [PATCH] RFC: Pass more packet and flow key info to userspace.

Jesse Gross jesse at nicira.com
Wed Jan 23 17:30:16 UTC 2013

On Tue, Jan 22, 2013 at 9:48 PM, Jarno Rajahalme
<jarno.rajahalme at nsn.com> wrote:
> Add OVS_PACKET_ATTR_KEY_INFO to relieve userspace from re-computing
> data already computed within the kernel datapath.  In the typical
> case of an upcall with perfect key fitness between kernel and
> userspace this eliminates flow_extract() and flow_hash() calls in
> handle_miss_upcalls().
> Additional bookkeeping within the kernel datapath is minimal.
> Kernel flow insertion also saves one flow key hash computation.
> Removed setting the packet's l7 pointer for ICMP packets, as this was
> never used.
> Signed-off-by: Jarno Rajahalme <jarno.rajahalme at nsn.com>
> ---
> This likely requires some discussion, but it took a while for me to
> understand why each packet miss upcall would require flow_extract()
> right after the flow key has been obtained from odp attributes.

Do you have any performance numbers to share?  Since this is an
optimization it's important to understand if the benefit is worth the
extra complexity.

More information about the dev mailing list