Re: [PATCH] omap3isp: avoid uninitialized memory

From: Sakari Ailus
Date: Tue Feb 21 2017 - 06:21:00 EST


Hi Pavel,

On Mon, Feb 20, 2017 at 01:06:47PM +0100, Pavel Machek wrote:
>
> Code in ispcsiphy is quite confusing, and does not initialize phy1 in
> case of isp rev. 2. Set it to zero, to prevent confusion.
>
> Signed-off-by: Pavel Machek <pavel@xxxxxx>
>
> index 8f73f6d..a2474b6 100644
> --- a/drivers/media/platform/omap3isp/ispcsiphy.c
> +++ b/drivers/media/platform/omap3isp/ispcsiphy.c
> @@ -362,14 +374,16 @@ int omap3isp_csiphy_init(struct isp_device *isp)
> phy2->phy_regs = OMAP3_ISP_IOMEM_CSIPHY2;
> mutex_init(&phy2->mutex);
>
> - if (isp->revision == ISP_REVISION_15_0) {
> - phy1->isp = isp;
> - phy1->csi2 = &isp->isp_csi2c;
> - phy1->num_data_lanes = ISP_CSIPHY1_NUM_DATA_LANES;
> - phy1->cfg_regs = OMAP3_ISP_IOMEM_CSI2C_REGS1;
> - phy1->phy_regs = OMAP3_ISP_IOMEM_CSIPHY1;
> - mutex_init(&phy1->mutex);
> + if (isp->revision != ISP_REVISION_15_0) {
> + memset(phy1, sizeof(*phy1), 0);
> + return 0;

Isn't the memory allocated using kzalloc(), meaning it's already zero?

> }
>
> + phy1->isp = isp;
> + phy1->csi2 = &isp->isp_csi2c;
> + phy1->num_data_lanes = ISP_CSIPHY1_NUM_DATA_LANES;
> + phy1->cfg_regs = OMAP3_ISP_IOMEM_CSI2C_REGS1;
> + phy1->phy_regs = OMAP3_ISP_IOMEM_CSIPHY1;
> + mutex_init(&phy1->mutex);
> return 0;
> }
>
>

--
Kind regards,

Sakari Ailus
e-mail: sakari.ailus@xxxxxx XMPP: sailus@xxxxxxxxxxxxxx