[dpdk-dev] rte_ctrlmbuf_init() and CTRL_MBUF_FLAG are not used - shouldn't they be removed and deprecated ?

Kevin Wilson wkevils at gmail.com
Sat Nov 25 12:43:17 CET 2017


Hi all,

>Let's see if someone complains, and if no, we can plan to remove it
>for 17.11.

Well, unless I missed it, I did not encounter any complaints, and
17.11 was already released.
And the status is of course the same (meaning that in the DPDK tree it
is not used).
Maybe now that 17.11 was just released several days ago, it is a good
time to start deprecation
process for these control MBUF stuff ? I know for sure that for DPDK
newbies who read the programmer's guide
and encounter it, this is a bit confusing (like in

"2.3.3. Network Packet Buffer Management (librte_mbuf)"
in
 http://dpdk.org/doc/guides/prog_guide/overview.html#network-packet-buffer-management-librte-mbuf)
...
...
"This library provides an API to allocate/free mbufs, manipulate
control message buffers (ctrlmbuf) which
are generic message buffers, and packet buffers (pktmbuf) which are
used to carry network packets."
...
...
and of course also confusing those who delve into the code.

Regards,
KW

On Mon, Jul 3, 2017 at 9:42 AM, Olivier Matz <olivier.matz at 6wind.com> wrote:
> Hi,
>
> On Mon, 3 Jul 2017 06:51:51 +0300, Kevin Wilson <wkevils at gmail.com> wrote:
>> Hello,
>> With the most recent master tree we have:
>>
>> git grep  rte_ctrlmbuf_init
>> doc/guides/prog_guide/mbuf_lib.rst:The rte_pktmbuf_init() and
>> rte_ctrlmbuf_init() functions initialize some fields in the mbuf
>> structure that
>> lib/librte_mbuf/rte_mbuf.c:rte_ctrlmbuf_init(struct rte_mempool *mp,
>> lib/librte_mbuf/rte_mbuf.h:void rte_ctrlmbuf_init(struct rte_mempool
>> *mp, void *opaque_arg,
>> lib/librte_mbuf/rte_mbuf_version.map:   rte_ctrlmbuf_init;
>>
>> git grep  rte_is_ctrlmbuf
>> lib/librte_mbuf/rte_mbuf.h:rte_is_ctrlmbuf(struct rte_mbuf *m)
>>
>> git grep CTRL_MBUF_FLAG
>> doc/guides/prog_guide/mbuf_lib.rst:or generic control buffers
>> (indicated by the CTRL_MBUF_FLAG).
>> lib/librte_mbuf/rte_mbuf.c:     m->ol_flags |= CTRL_MBUF_FLAG;
>> lib/librte_mbuf/rte_mbuf.h:#define CTRL_MBUF_FLAG       (1ULL << 63)
>> /**< Mbuf contains control data */
>> lib/librte_mbuf/rte_mbuf.h:     return !!(m->ol_flags & CTRL_MBUF_FLAG);
>>
>> rte_ctrlmbuf_init() and CTRL_MBUF_FLAG and rte_is_ctrlmbuf() are not
>> used - shouldn't they be removed and deprecated ?
>
> Yes, I'm in favor of removing it since a long time. This was
> discussed and partially removed in 2014, because there was still a
> user of it in examples/. But it looks that it's now unused since 2015.
>
> Let's see if someone complains, and if no, we can plan to remove it
> for 17.11.
>
> Olivier


More information about the dev mailing list