[dpdk-dev,v2] rte mempool: division or modulo by zero
Commit Message
Fix issue reported by Coverity.
Coverity ID 13243: Division or modulo by zero
In function call rte_mempool_xmem_size, division by expression total_size
which may be zero has undefined behavior.
Fixes: 148f963fb532 ("xen: core library changes")
Signed-off-by: Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com>
---
lib/librte_mempool/rte_mempool.c | 3 +++
1 file changed, 3 insertions(+)
Comments
On 05/19/2016 02:36 PM, Slawomir Mrozowicz wrote:
> Fix issue reported by Coverity.
>
> Coverity ID 13243: Division or modulo by zero
> In function call rte_mempool_xmem_size, division by expression total_size
> which may be zero has undefined behavior.
>
> Fixes: 148f963fb532 ("xen: core library changes")
>
> Signed-off-by: Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Please take care of the title.
Here you know it is not a modulo but you keep copying the coverity message.
It is fixed to "mempool: avoid division by zero"
2016-05-23 13:28, Olivier Matz:
> On 05/19/2016 02:36 PM, Slawomir Mrozowicz wrote:
> > Fix issue reported by Coverity.
> >
> > Coverity ID 13243: Division or modulo by zero
> > In function call rte_mempool_xmem_size, division by expression total_size
> > which may be zero has undefined behavior.
Please prefer this format instead of the first 2 lines:
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>
Applied, thanks
@@ -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;