On Fri, Sep 26, 2014 at 09:28:17PM +1200, Joe Stringer wrote: > One of the limiting factors on the number of flows that can be supported > in the datapath is the overhead of assembling flow dump messages in the > datapath. This patch modifies the flow_dump interface to allow > revalidators to skip dumping the key, mask and actions from the > datapath, by making use of the unique identifiers introduced in earlier > patches. > > For each flow dump, the dpif user specifies whether to skip these > attributes, allowing the common case to only dump a pair of 128-bit ID > and flow stats. This increases the number of flows that a revalidator > can handle per second by 50% or more. > > Signed-off-by: Joe Stringer <joestrin...@nicira.com>
Just now I noticed that this memcpy() in dp_netdev_flow_to_dpif_flow(): memcpy(&flow->uid, &netdev_flow->uid, sizeof flow->uid); could just be written as an assignment: flow->uid = netdev_flow->uid; (It was introduced in some earlier patch.) In dpif_netlink_flow_dump_create(), I wouldn't mark 'dump_flags' as static; its address is never taken. I suspect that check_recirc() and check_uid() should pass DPIF_FP_MODIFY as well as DPIF_FP_CREATE, just in case a previous run of OVS was killed at just the right time to leave a straggler probe flow in the datapath. Acked-by: Ben Pfaff <b...@nicira.com> _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev