It wasn't obvious how ownership transferred to odp_execute_actions() or
to its callback.

CC: Yifeng Sun <[email protected]>
Signed-off-by: Ben Pfaff <[email protected]>
---
 lib/odp-execute.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/lib/odp-execute.c b/lib/odp-execute.c
index 2d20cd57fd1d..5ff180f9cbca 100644
--- a/lib/odp-execute.c
+++ b/lib/odp-execute.c
@@ -665,6 +665,15 @@ requires_datapath_assistance(const struct nlattr *a)
     return false;
 }
 
+/* Executes all of the 'actions_len' bytes of datapath actions in 'actions' on
+ * the packets in 'batch'.  If 'steal' is true, possibly modifies and
+ * definitely free the packets in 'batch', otherwise leaves 'batch' unchanged.
+ *
+ * Some actions (e.g. output actions) can only be executed by a datapath.  This
+ * function implements those actions by passing the action and the packets to
+ * 'dp_execute_action' (along with 'dp').  If 'dp_execute_action' is passed a
+ * true 'may_steal' parameter then it may possibly modify and must definitely
+ * free the packets passed into it, otherwise it must leave them unchanged. */
 void
 odp_execute_actions(void *dp, struct dp_packet_batch *batch, bool steal,
                     const struct nlattr *actions, size_t actions_len,
-- 
2.10.2

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to