test/mbuf: fix forged mbuf in clone test
authorStephen Hemminger <stephen@networkplumber.org>
Tue, 8 Oct 2019 16:33:46 +0000 (09:33 -0700)
committerDavid Marchand <david.marchand@redhat.com>
Wed, 16 Oct 2019 10:41:49 +0000 (12:41 +0200)
The test for cloning changed mbuf would generate an mbuf whose length
and segments count were invalid.
This would cause a crash if test was run with mbuf debugging enabled.

Fixes: 4ccd2bb3a9e2 ("app/test: enhance mbuf refcnt check")
Fixes: af75078fece3 ("first public release")
Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
app/test/test_mbuf.c

index 2a97afe..aafad0c 100644 (file)
@@ -332,8 +332,11 @@ testclone_testupdate_testdetach(struct rte_mempool *pktmbuf_pool)
        m->next = rte_pktmbuf_alloc(pktmbuf_pool);
        if (m->next == NULL)
                GOTO_FAIL("Next Pkt Null\n");
+       m->nb_segs = 2;
 
        rte_pktmbuf_append(m->next, sizeof(uint32_t));
+       m->pkt_len = 2 * sizeof(uint32_t);
+
        data = rte_pktmbuf_mtod(m->next, unaligned_uint32_t *);
        *data = MAGIC_DATA;