a7e88f1782
The previous code in func_reentrancy autotest was doing in parallel something close to: name = "common_name"; do several times { obj = allocate_an_object(name) // obj = ring, mempool, hash, lpm, ... if (obj == NULL && lookup(name) == NULL) return TEST_FAIL; } This code is not safe. For instance: mempool_create() is called on core 0, it creates a ring. At the same time on core 1, mempool_create() is called too and the creation of the ring fails (EEXIST). But the mempool lookup can fail on core 1 if the mempool is not added in the list by core 0. This commit fixes the func_reentrancy autotest that now works with all tested class of objects. Fixes: 104a92bd02 ("app: add reentrancy tests") Signed-off-by: Olivier Matz <olivier.matz@6wind.com> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
DPDK is a set of libraries and drivers for fast packet processing. It supports many processor architectures and both FreeBSD and Linux. The DPDK uses the Open Source BSD license for the core libraries and drivers. The kernel components are GPLv2 licensed. Please check the doc directory for release notes, API documentation, and sample application information. For questions and usage discussions, subscribe to: users@dpdk.org Report bugs and issues to the development mailing list: dev@dpdk.org
Description
Languages
C
99.1%
Meson
0.5%
Python
0.2%
Shell
0.1%