The sample action can be used for translating Openflow 'clone' action. However its implementation has not been sufficiently optimized for this use case. This series attempts to close the gap.
Patch 3 commit message has more details on the specific optimizations implemented. --- v3->v4: Enhance patch 4. Fix two bugs pointed out by Pravin, Remove 'is_sample' variable. v2->v3: Enhance patch 4, Rafctor to move more common logic to clone_execute(). v1->v2: Address Pravin's comment, Refactor recirc and sample to share more common code Andy Zhou (4): openvswitch: Deferred fifo API change. openvswitch: Refactor recirc key allocation. openvswitch: Optimize sample action for the clone use cases Openvswitch: Refactor sample and recirc actions implementation include/uapi/linux/openvswitch.h | 15 +++ net/openvswitch/actions.c | 271 ++++++++++++++++++++++----------------- net/openvswitch/datapath.h | 2 - net/openvswitch/flow_netlink.c | 141 +++++++++++++------- 4 files changed, 263 insertions(+), 166 deletions(-) -- 1.8.3.1