diff options
author | Johan Hedberg <johan.hedberg@intel.com> | 2016-12-14 08:24:19 +0200 |
---|---|---|
committer | Johan Hedberg <johan.hedberg@intel.com> | 2016-12-15 12:06:22 +0200 |
commit | 692771fbe95e9e0555011e3f96c073c078d85664 (patch) | |
tree | 2b6b2413cb2376eeff9d7e4c2dca8d5a5b3ea813 /doc | |
parent | d659bb020e1db6dad07585abef200f3f0c7ffffc (diff) |
net: buf: Switch from k_fifo to k_lifo for free buffers
Using a LIFO instead of a FIFO has the potential benefit that more
recently in-use buffers may be "cache-hot" and therefore accessed
faster than least recently used (which is what we get with a FIFO).
Change-Id: I59bb083ca2e00d0d404406540f7db216742a27cf
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Diffstat (limited to 'doc')
-rw-r--r-- | doc/subsystems/networking/buffers.rst | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/doc/subsystems/networking/buffers.rst b/doc/subsystems/networking/buffers.rst index 634c024d8..1ad89016d 100644 --- a/doc/subsystems/networking/buffers.rst +++ b/doc/subsystems/networking/buffers.rst @@ -39,9 +39,8 @@ buffers may also contain protocol-specific context, known as user data. Both the maximum data and user data capacity of the buffers is compile-time defined when declaring the buffer pool. -Since the free buffers are managed with the help of a k_fifo it means -the buffers have native support for being passed through other FIFOs -as well. This is a very practical feature when the buffers need to be +The buffers have native support for being passed through k_fifo kernel +objects. This is a very practical feature when the buffers need to be passed from one thread to another. However, since a net_buf may have a fragment chain attached to it, instead of using the :c:func:`k_fifo_put` and :c:func:`k_fifo_get` APIs, special :c:func:`net_buf_put` and |