summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/odp-execute.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/odp-execute.c b/lib/odp-execute.c
index 1090fa832..44e669138 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,