efd: fix tailq entry leak in error path
authorYunjian Wang <wangyunjian@huawei.com>
Tue, 29 Sep 2020 03:31:35 +0000 (11:31 +0800)
committerDavid Marchand <david.marchand@redhat.com>
Thu, 22 Oct 2020 20:07:15 +0000 (22:07 +0200)
In rte_efd_create() allocated memory for tailq entry, we should
free it when error happens, otherwise it will lead to memory leak.

Fixes: 56b6ef874f80 ("efd: new Elastic Flow Distributor library")
Cc: stable@dpdk.org
Signed-off-by: Yunjian Wang <wangyunjian@huawei.com>
Acked-by: Yipeng Wang <yipeng1.wang@intel.com>
lib/librte_efd/rte_efd.c

index ec3a4cd..77f4680 100644 (file)
@@ -711,6 +711,7 @@ rte_efd_create(const char *name, uint32_t max_num_rules, uint32_t key_len,
 
 error_unlock_exit:
        rte_mcfg_tailq_write_unlock();
+       rte_free(te);
        rte_efd_free(table);
 
        return NULL;