[dpdk-dev] [Bug 347] TAPPMD frees buffers it fails to send

bugzilla at dpdk.org bugzilla at dpdk.org
Mon Sep 16 10:36:00 CEST 2019


            Bug ID: 347
           Summary: TAPPMD frees buffers it fails to send
           Product: DPDK
           Version: 19.08
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: ethdev
          Assignee: dev at dpdk.org
          Reporter: harry.walsh at gmail.com
  Target Milestone: ---

static uint16_t
pmd_tx_burst(void *queue, struct rte_mbuf **bufs, uint16_t nb_pkts)
                tap_write_mbufs(txq, num_mbufs, mbuf,
                                &num_packets, &num_tx_bytes);
                /* free original mbuf */

If tap_write_mbufs fails to send packets ( i.e. num_packets < num_mbufs )

In my situation I'm sending exactly one packet and it fails to send,
num_packets is passed out as zero, pmd_tx_burst frees the original buffer and
returns 1 back.

I then free the buffer because tx_burst returned zero, and this returns in a
double free.

You are receiving this mail because:
You are the assignee for the bug.

More information about the dev mailing list