fbarray: check sysconf failure
authorAnatoly Burakov <anatoly.burakov@intel.com>
Tue, 17 Apr 2018 15:44:08 +0000 (16:44 +0100)
committerThomas Monjalon <thomas@monjalon.net>
Mon, 23 Apr 2018 20:44:22 +0000 (22:44 +0200)
sysconf() may return a negative value, check for it.

Coverity issue: 272586
Fixes: c44d09811b40 ("eal: add shared indexed file-backed array")

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
lib/librte_eal/common/eal_common_fbarray.c

index d17611b..019f84c 100644 (file)
@@ -572,6 +572,9 @@ rte_fbarray_detach(struct rte_fbarray *arr)
 
        size_t page_sz = sysconf(_SC_PAGESIZE);
 
+       if (page_sz == (size_t)-1)
+               return -1;
+
        /* this may already be unmapped (e.g. repeated call from previously
         * failed destroy(), but this is on user, we can't (easily) know if this
         * is still mapped.