[dpdk-dev] [PATCH] doc: add known issue with mbuf segment

Morten Brørup mb at smartsharesystems.com
Thu Aug 5 08:08:15 CEST 2021


> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Thomas Monjalon
> Sent: Wednesday, 4 August 2021 15.30
> 
> A bug with segmented packets has been discovered but the agreement
> to apply the fix is not concluded at the time of DPDK 21.08 release.
> This bug seems to be in DPDK for many years and should be fixed in
> 21.11.
> 
> Suggested-by: Olivier Matz <olivier.matz at 6wind.com>
> Signed-off-by: Thomas Monjalon <thomas at monjalon.net>
> ---
>  doc/guides/rel_notes/release_21_08.rst | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/doc/guides/rel_notes/release_21_08.rst
> b/doc/guides/rel_notes/release_21_08.rst
> index d7559ec6bf..14e32585b8 100644
> --- a/doc/guides/rel_notes/release_21_08.rst
> +++ b/doc/guides/rel_notes/release_21_08.rst
> @@ -251,6 +251,18 @@ Known Issues
>     Also, make sure to start the actual text at the margin.
>     =======================================================
> 
> +* **Last mbuf segment not implicitly reset.**
> +
> +  It is expected that free mbufs have their field ``nb_seg`` set to 1,
> +  so that when it is allocated, the user does not need to set its
> value.
> +  The mbuf free functions are responsible of resetting this field to 1
> +  before returning the mbuf to the pool.
> +
> +  When a multi-segment mbuf is freed, the field ``nb_seg`` is not
> reset
> +  to 1 for the last segment of the chain. On next allocation of this
> segment,
> +  if the field is not explicitly reset by the user,
> +  an invalid mbuf can be created, and can cause an undefined behavior.
> +
> 

I have a couple of suggestions:

1. Add that this bug was present in previous DPDK releases for many years. If possible, mention which release introduced the bug.

We don't want users to choose to stay on older release, thinking that it does not have this bug.

Also, if a user experiences unexplainable problems with segmented packets an older DPDK release, he might get lucky and find these release notes, which could reveal the root cause of the problems he is experiencing.

2. Add a link to the patch that fixes the bug. It will let users affected by the bug easily fix it (possibly at the expense of degraded performance).

With those two additions,
Acked-by: Morten Brørup <mb at smartsharesystems.com>

-Morten


More information about the dev mailing list