It turned out to be a bug in the application, freeing an object twice. Note: If building DPDK and the application with RTE_LIBRTE_MEMPOOL_DEBUG set in config/rte_config.h, the mempool cookies should catch any double frees.