[ovs-dev] [no-slow 5/6] ofproto-dpif: Don't slow-path controller actions.

Ben Pfaff blp at ovn.org
Tue Jan 2 18:36:46 UTC 2018


On Thu, Dec 21, 2017 at 02:25:14PM -0800, Justin Pettit wrote:
> Controller actions have become more commonly used for purposes other
> than just making forwarding decisions (e.g., packet logging).  A packet
> that needs to be copied to the controller and forwarded would always be
> sent to ovs-vswitchd to be handled, which could negatively affect
> performance and cause heavier CPU utilization in ovs-vswitchd.
> 
> This commit changes the behavior so that OpenFlow controller actions
> become userspace datapath actions while continuing to let packet
> forwarding and manipulation continue to be handled by the datapath
> directly.
> 
> This patch still slow-paths controller actions with the "pause" flag
> set.  A future patch will stop slow-pathing these pause actions as
> well.
> 
> Signed-off-by: Justin Pettit <jpettit at ovn.org>

checkpatch says:

    WARNING: Line length is >79-characters long
    #22 FILE: lib/odp-util.c:482:
                           && cookie.header.type == USER_ACTION_COOKIE_CONTROLLER) {

This is missing code from parse_odp_userspace_action() that should be
able to parse the formatted actions.

I would add a test to "OVS datapath actions parsing and formatting -
valid forms" in tests/odp.at for parsing and formatting the new kind of
userspace action.

This is a nice simplification!  I thought it would make the code bigger
and more complicated, but it shrank it (at least in the worst areas) and
made it simpler.

Acked-by: Ben Pfaff <blp at ovn.org>


More information about the dev mailing list