app/test: fix memory autotests on FreeBSD
Checks
Commit Message
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")
Cc: anatoly.burakov@intel.com
Reported-by: Brandon Lo <blo@iol.unh.edu>
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
app/test/test_memory.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Comments
On Fri, Sep 17, 2021 at 5:09 PM Bruce Richardson
<bruce.richardson@intel.com> wrote:
>
> 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>
Applied, thanks.
@@ -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;