aboutsummaryrefslogtreecommitdiff
path: root/doc/users-guide
diff options
context:
space:
mode:
authorNithin Dabilpuram <ndabilpuram@marvell.com>2020-10-14 22:37:58 +0530
committerMatias Elo <matias.elo@nokia.com>2020-11-02 13:58:47 +0200
commite732ec5c6cd1b330ece09b873bc3b7251a40a0d2 (patch)
treeadb1f7fe17a3cd687b7454133d177888bdeab45d /doc/users-guide
parentd2e08fbd389adbae9f7d1f5117696524cd520918 (diff)
doc: userguide: add pktio capability of no packet refs
Add documentation about pktio capability of no packet references offload. This offload helps platform optimize fast path for case when the packet is just forwarded with no static or dynamic references taken. Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com> Reviewed-by: Janne Peltonen <janne.peltonen@nokia.com>
Diffstat (limited to 'doc/users-guide')
-rw-r--r--doc/users-guide/users-guide-pktio.adoc19
1 files changed, 19 insertions, 0 deletions
diff --git a/doc/users-guide/users-guide-pktio.adoc b/doc/users-guide/users-guide-pktio.adoc
index 0457aa56c..482a09971 100644
--- a/doc/users-guide/users-guide-pktio.adoc
+++ b/doc/users-guide/users-guide-pktio.adoc
@@ -392,6 +392,11 @@ transmitted:
* contain at least as many data bytes after L3/L4 offsets as the headers
* indicate. Other data bytes of the packet are ignored for the checksum
* insertion.
+ *
+ * No packet refs is an offload when set indicates that this pktio
+ * can always free the packet buffer after transmission and need not check
+ * for packet references and application will make sure that a packet
+ * transmitted via this pktio will always have only single reference.
*/
typedef union odp_pktout_config_opt_t {
/** Option flags for packet output */
@@ -420,6 +425,20 @@ typedef union odp_pktout_config_opt_t {
/** Insert SCTP checksum on packet by default */
uint64_t sctp_chksum : 1;
+ /** Packet references not used on packet output
+ *
+ * When set, application indicates that it will not transmit
+ * packet references on this packet IO interface.
+ * Since every ODP implementation supports it, it is always
+ * ok to set this flag.
+ *
+ * 0: Packet references may be transmitted on the
+ * interface (the default value).
+ * 1: Packet references will not be transmitted on the
+ * interface.
+ */
+ uint64_t no_packet_refs : 1;
+
} bit;
/** All bits of the bit field structure