summaryrefslogtreecommitdiff
path: root/doc/guides/prog_guide/mbuf_lib.rst
diff options
context:
space:
mode:
authorOlivier Matz <olivier.matz@6wind.com>2018-04-03 15:39:13 +0200
committerThomas Monjalon <thomas@monjalon.net>2018-04-11 23:40:40 +0200
commitd27a6261875d203424e93d7316a0e92852f367b5 (patch)
treebdfb26e720882652dc947a6dd1d17660e1d6d178 /doc/guides/prog_guide/mbuf_lib.rst
parent6f0841b7701bd7f962d2fa982f6a827760f65907 (diff)
downloaddpdk-d27a6261875d203424e93d7316a0e92852f367b5.zip
dpdk-d27a6261875d203424e93d7316a0e92852f367b5.tar.gz
dpdk-d27a6261875d203424e93d7316a0e92852f367b5.tar.xz
mbuf: remove control mbuf
The rte_ctrlmbuf structure is not used by any example application in dpdk. Remove it, as announced on the mailing list. Signed-off-by: Olivier Matz <olivier.matz@6wind.com> Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Diffstat (limited to 'doc/guides/prog_guide/mbuf_lib.rst')
-rw-r--r--doc/guides/prog_guide/mbuf_lib.rst11
1 files changed, 5 insertions, 6 deletions
diff --git a/doc/guides/prog_guide/mbuf_lib.rst b/doc/guides/prog_guide/mbuf_lib.rst
index 210a9af..0d3223b 100644
--- a/doc/guides/prog_guide/mbuf_lib.rst
+++ b/doc/guides/prog_guide/mbuf_lib.rst
@@ -10,9 +10,8 @@ The mbuf library provides the ability to allocate and free buffers (mbufs)
that may be used by the DPDK application to store message buffers.
The message buffers are stored in a mempool, using the :ref:`Mempool Library <Mempool_Library>`.
-A rte_mbuf struct can carry network packet buffers
-or generic control buffers (indicated by the CTRL_MBUF_FLAG).
-This can be extended to other types.
+A rte_mbuf struct generally carries network packet buffers, but it can actually
+be any data (control data, events, ...).
The rte_mbuf header structure is kept as small as possible and currently uses
just two cache lines, with the most frequently used fields being on the first
of the two cache lines.
@@ -68,13 +67,13 @@ Buffers Stored in Memory Pools
The Buffer Manager uses the :ref:`Mempool Library <Mempool_Library>` to allocate buffers.
Therefore, it ensures that the packet header is interleaved optimally across the channels and ranks for L3 processing.
An mbuf contains a field indicating the pool that it originated from.
-When calling rte_ctrlmbuf_free(m) or rte_pktmbuf_free(m), the mbuf returns to its original pool.
+When calling rte_pktmbuf_free(m), the mbuf returns to its original pool.
Constructors
------------
-Packet and control mbuf constructors are provided by the API.
-The rte_pktmbuf_init() and rte_ctrlmbuf_init() functions initialize some fields in the mbuf structure that
+Packet mbuf constructors are provided by the API.
+The rte_pktmbuf_init() function initializes some fields in the mbuf structure that
are not modified by the user once created (mbuf type, origin pool, buffer start address, and so on).
This function is given as a callback function to the rte_mempool_create() function at pool creation time.