From a5ab5034f4b50fc5a19ccf8910c91613e6a52f5a Mon Sep 17 00:00:00 2001 From: Haiyang Tan Date: Mon, 15 Oct 2018 06:17:55 -0700 Subject: Fix coverity issue for potentially overflowing of page size Change-Id: I2779626d745badb63386efcf729da7a094a4f297 Signed-off-by: Haiyang Tan --- src/plugins/dpdk/buffer.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/plugins/dpdk') diff --git a/src/plugins/dpdk/buffer.c b/src/plugins/dpdk/buffer.c index edace2aaf61..bb177fc6772 100644 --- a/src/plugins/dpdk/buffer.c +++ b/src/plugins/dpdk/buffer.c @@ -465,7 +465,7 @@ dpdk_pool_create (vlib_main_t * vm, u8 * pool_name, u32 elt_size, for (i = 0; i < pr->n_pages; i++) { - size_t page_size = 1 << pr->log2_page_size; + size_t page_size = 1ull << pr->log2_page_size; ret = rte_mempool_populate_iova (mp, ((char *) pr->mem) + i * page_size, pr->page_table[i], page_size, 0, 0); if (ret < 0) @@ -493,8 +493,8 @@ dpdk_pool_create (vlib_main_t * vm, u8 * pool_name, u32 elt_size, /* *INDENT-OFF* */ vec_foreach_index (i, pr->page_table) { - dm.vaddr = pointer_to_uword (pr->mem) + (i << pr->log2_page_size); - dm.size = 1 << pr->log2_page_size; + dm.vaddr = pointer_to_uword (pr->mem) + ((u64)i << pr->log2_page_size); + dm.size = 1ull << pr->log2_page_size; dm.iova = pr->page_table[i]; if ((rv = ioctl (dbm->vfio_container_fd, VFIO_IOMMU_MAP_DMA, &dm))) break; -- cgit 1.2.3-korg