Re: [PATCH v4 1/6] imx-drm: ipu-dmfc: Check 'dmfc' pointer first

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Feb 26, 2014 at 08:53:39PM -0300, Fabio Estevam wrote:
> From: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
> 
> Fix the following static checker warning:
> 
> drivers/staging/imx-drm/ipu-v3/ipu-dmfc.c:164 ipu_dmfc_setup_channel() warn: variable dereferenced before check 'dmfc' (see line 157)
> 
> Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
> Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
> ---
> Changes since v3:
> - None
> Changes since v2:
> - None
> Changes since v1:
> - Check 'dmfc' prior to setting the priv pointer
> 
>  drivers/staging/imx-drm/ipu-v3/ipu-dmfc.c | 10 ++++++----
>  1 file changed, 6 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/staging/imx-drm/ipu-v3/ipu-dmfc.c b/drivers/staging/imx-drm/ipu-v3/ipu-dmfc.c
> index 98070dd..ce152d9 100644
> --- a/drivers/staging/imx-drm/ipu-v3/ipu-dmfc.c
> +++ b/drivers/staging/imx-drm/ipu-v3/ipu-dmfc.c
> @@ -154,16 +154,18 @@ EXPORT_SYMBOL_GPL(ipu_dmfc_disable_channel);
>  static int ipu_dmfc_setup_channel(struct dmfc_channel *dmfc, int slots,
>  		int segment, int burstsize)
>  {
> -	struct ipu_dmfc_priv *priv = dmfc->priv;
> +	struct ipu_dmfc_priv *priv;
>  	u32 val, field;
>  
> +	if (!dmfc)
> +		return -EINVAL;

How can dmfc ever be NULL?  You control what values you pass to it, why
check it again?

Have you hit this problem in the "wild"?  If so, shouldn't the root
cause be fixed and not papered over here?

thanks,

greg k-h
_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel




[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux