test/mem: fix memory autotests on FreeBSD
authorBruce Richardson <bruce.richardson@intel.com>
Fri, 17 Sep 2021 15:09:17 +0000 (16:09 +0100)
committerDavid Marchand <david.marchand@redhat.com>
Sat, 2 Oct 2021 14:40:20 +0000 (16:40 +0200)
The memory autotests were failing on FreeBSD, due to an incorrect errno
variable being checked for ENOTSUP. The test checked "errno" while the
DPDK API sets "rte_errno". Changing to check the right variable makes
the test behave properly.

Fixes: c3e35a0966b8 ("test/mem: check segment fd API")

Reported-by: Brandon Lo <blo@iol.unh.edu>
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
app/test/test_memory.c

index 7d5ae99..dbf6871 100644 (file)
@@ -6,6 +6,7 @@
 #include <stdint.h>
 
 #include <rte_eal.h>
+#include <rte_errno.h>
 #include <rte_memory.h>
 #include <rte_common.h>
 #include <rte_memzone.h>
@@ -53,7 +54,7 @@ check_seg_fds(const struct rte_memseg_list *msl, const struct rte_memseg *ms,
                /* ENOTSUP means segment is valid, but there is not support for
                 * segment fd API (e.g. on FreeBSD).
                 */
-               if (errno == ENOTSUP)
+               if (rte_errno == ENOTSUP)
                        return 1;
                /* all other errors are treated as failures */
                return -1;