mempool: avoid division by zero
authorSlawomir Mrozowicz <slawomirx.mrozowicz@intel.com>
Thu, 19 May 2016 12:36:35 +0000 (14:36 +0200)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Tue, 24 May 2016 09:09:31 +0000 (11:09 +0200)
In function call rte_mempool_xmem_size, division by expression total_size
which may be zero has undefined behavior.

Coverity issue: 13243
Fixes: 148f963fb532 ("xen: core library changes")

Signed-off-by: Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
lib/librte_mempool/rte_mempool.c

index 1ab6701..b54de43 100644 (file)
@@ -239,6 +239,9 @@ rte_mempool_xmem_size(uint32_t elt_num, size_t total_elt_sz, uint32_t pg_shift)
 {
        size_t obj_per_page, pg_num, pg_sz;
 
+       if (total_elt_sz == 0)
+               return 0;
+
        if (pg_shift == 0)
                return total_elt_sz * elt_num;