summaryrefslogtreecommitdiffstats
path: root/drivers/staging/fbtft/fbtft-core.c
diff options
context:
space:
mode:
authorAmitoj Kaur Chawla2016-02-25 14:20:58 +0100
committerGreg Kroah-Hartman2016-03-12 07:09:09 +0100
commit0c9ab986e2dc87bd7c87384afeddd1326570d03e (patch)
treecde2f43cffb6ed851d5661ee0be3692cac95631f /drivers/staging/fbtft/fbtft-core.c
parentstaging: fbtft: Remove unnecessary spi_set_drvdata() (diff)
downloadkernel-qcow2-linux-0c9ab986e2dc87bd7c87384afeddd1326570d03e.tar.gz
kernel-qcow2-linux-0c9ab986e2dc87bd7c87384afeddd1326570d03e.tar.xz
kernel-qcow2-linux-0c9ab986e2dc87bd7c87384afeddd1326570d03e.zip
staging: fbtft: Use devm_kcalloc instead of devm_kzalloc
Replace devm_kzalloc with devm_kcalloc to ensure there are no integer overflows from the multiplication of a number * sizeof The following Coccinelle semantic patch was used to make this change: //<smpl> @@ expression dev,E1,E2,E3,E4; @@ - devm_kzalloc(dev,E1*E2*sizeof(E3),E4) + devm_kcalloc(dev,E1*E2,sizeof(E3),E4) //</smpl> Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/fbtft/fbtft-core.c')
-rw-r--r--drivers/staging/fbtft/fbtft-core.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/staging/fbtft/fbtft-core.c b/drivers/staging/fbtft/fbtft-core.c
index 574c14828ca3..0c1a77cafe14 100644
--- a/drivers/staging/fbtft/fbtft-core.c
+++ b/drivers/staging/fbtft/fbtft-core.c
@@ -736,8 +736,11 @@ struct fb_info *fbtft_framebuffer_alloc(struct fbtft_display *display,
goto alloc_fail;
if (display->gamma_num && display->gamma_len) {
- gamma_curves = devm_kzalloc(dev, display->gamma_num * display->gamma_len * sizeof(gamma_curves[0]),
- GFP_KERNEL);
+ gamma_curves = devm_kcalloc(dev,
+ display->gamma_num *
+ display->gamma_len,
+ sizeof(gamma_curves[0]),
+ GFP_KERNEL);
if (!gamma_curves)
goto alloc_fail;
}