On Fri, Jan 10, 2014 at 03:18:24PM -0800, Ben Pfaff wrote: > handle_upcalls() always installed a flow for every packet, as long as > the datapath didn't already have too many flows, but there are cases where > we don't want to do this: > > - If we get multiple packets in a single microflow all in one batch > (perhaps due to GSO breaking up a large TCP packet for sending to > userspace, or for another reason), then we only need to install the > datapath flow once. > > - For a slow-pathed flow received via a slow-path action in the kernel, > we know that the kernel flow is already there (because otherwise it > would have been received as "no match" instead of an action), so > there is no benefit to reinstalling it. > > Noticed because a CFM slow-pathed flow was getting reinstalled every time > a CFM packet was received. > > Reported-by: Guolin Yang <[email protected]> > Signed-off-by: Ben Pfaff <[email protected]>
These patches possibly fix performance problems (although I have not measured). They definitely fix what I perceive as bugs. I plan to backport them to branch-2.1 after review. _______________________________________________ dev mailing list [email protected] http://openvswitch.org/mailman/listinfo/dev
