On Thu, Mar 16, 2023 at 10:14:56PM +0300, Pavel Ivashchenko wrote:
> How to reproduce:
>
> 1. Define RTE_LIBRTE_MBUF_DEBUG
> 2. MALLOC_PERTURB_=178 DPDK_TEST=mbuf_autotest gdb --args
> obj-x86_64-linux-gnu/app/test/dpdk-test --file-prefix=mbuf_autotest
>
> PANIC in rte_mbuf_sanity_check():
> bad pkt_len
>
> ...
> #6 0x00007ffff7d3d4cc in rte_mbuf_sanity_check (m=m@entry=0x17f8c3400,
> is_header=is_header@entry=1) at ../lib/mbuf/rte_mbuf.c:384
> #7 0x0000555555653d57 in rte_pktmbuf_free (m=0x17f8c3400) at
> ../lib/mbuf/rte_mbuf.h:1385
> #8 0x000055555565c7a6 in test_nb_segs_and_next_reset () at
> ../app/test/test_mbuf.c:2752
> #9 test_mbuf () at ../app/test/test_mbuf.c:2967
> ...
>
> (gdb) frame 6
> #6 0x00007ffff7d3d4cc in rte_mbuf_sanity_check (m=m@entry=0x17f8c3400,
> is_header=is_header@entry=1) at ../lib/mbuf/rte_mbuf.c:384
> 384 rte_panic("%s\n", reason);
> (gdb) p/d m->pkt_len
> $4 = 1500
>
> Fixes: efc6f9104c80 ("mbuf: fix reset on mbuf free")
> Cc: [email protected]
>
> Signed-off-by: Pavel Ivashchenko <[email protected]>
Acked-by: Olivier Matz <[email protected]>