@@ -842,7 +842,7 @@ static int cio2_vb2_buf_init(struct vb2_buffer *vb)
unsigned int lops = DIV_ROUND_UP(pages + 1, entries_per_page);
struct sg_table *sg;
struct sg_page_iter sg_iter;
- unsigned int i, j;
+ int i, j;
if (lops <= 0 || lops > CIO2_MAX_LOPS) {
dev_err(dev, "%s: bad buffer size (%i)\n", __func__,
@@ -850,7 +850,7 @@ static int cio2_vb2_buf_init(struct vb2_buffer *vb)
return -ENOSPC; /* Should never happen */
}
- memset(b->lop, 0, sizeof(*b->lop));
+ memset(b->lop, 0, sizeof(b->lop));
/* Allocate LOP table */
for (i = 0; i < lops; i++) {
b->lop[i] = dma_alloc_coherent(dev, CIO2_PAGE_SIZE,
@@ -880,7 +880,7 @@ static int cio2_vb2_buf_init(struct vb2_buffer *vb)
b->lop[i][j] = cio2->dummy_page_bus_addr >> PAGE_SHIFT;
return 0;
fail:
- for (; i >= 0; i--)
+ for (i--; i >= 0; i--)
dma_free_coherent(dev, CIO2_PAGE_SIZE,
b->lop[i], b->lop_bus_addr[i]);
return -ENOMEM;
Hi, Sakari, Fixed warnings about memset of pointer array and unsigned int used for 0 comparison reported by static code analysis tool, please squash this to the driver, thanks!! Signed-off-by: Yong Zhi <yong.zhi@intel.com> --- drivers/media/pci/intel/ipu3/ipu3-cio2.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)