lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 14 Oct 2014 17:21:18 +0530
From:	Vinod Koul <vinod.koul@...el.com>
To:	Krzysztof Kozlowski <k.kozlowski@...sung.com>,
	Lars-Peter Clausen <lars@...afoo.de>
Cc:	Dan Williams <dan.j.williams@...el.com>,
	Michal Simek <michal.simek@...inx.com>,
	Dan Carpenter <dan.carpenter@...cle.com>,
	dmaengine@...r.kernel.org, linux-kernel@...r.kernel.org,
	Kyungmin Park <kyungmin.park@...sung.com>,
	Marek Szyprowski <m.szyprowski@...sung.com>,
	Bartlomiej Zolnierkiewicz <b.zolnierkie@...sung.com>
Subject: Re: [RESEND PATCH v2 1/4] dmaengine: pl330: Remove non-NULL check
 for pl330_submit_req parameters

On Mon, Sep 29, 2014 at 02:42:18PM +0200, Krzysztof Kozlowski wrote:
> The pl330_submit_req() checked supplied 'struct pl330_thread thrd' and
> 'struct dma_pl330_desc desc' parameters for non-NULL. However these
> checks are useless because supplied arguments won't be NULL.
even if we have some error or bug?

I would like this to be checked and complained loudly so we know something
is going wrong rather than assuming it will be correct always.

-- 
~Vinod
> 
> The pl330_submit_req() is called in only one place and:
> 1. 'desc' is already dereferenced in fill_queue() before calling
>    pl330_submit_req().
> 2. 'thrd' is always dereferenced after calling
>    fill_queue()->pl330_submit_req().
> 
> Removing the checks for non-NULL values fixes following warning:
> drivers/dma/pl330.c:1376 pl330_submit_req() warn: variable dereferenced before check 'thrd' (see line 1367)
> 
> Signed-off-by: Krzysztof Kozlowski <k.kozlowski@...sung.com>
> 
> ---
> 
> Changes since v1:
> =================
> 1. Remove the checks for non-NULL completely instead of moving them
>    before dereference. Suggested by Lars-Peter Clausen.
> ---
>  drivers/dma/pl330.c | 4 ----
>  1 file changed, 4 deletions(-)
> 
> diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
> index d5149aacd2fe..57049f84d0c0 100644
> --- a/drivers/dma/pl330.c
> +++ b/drivers/dma/pl330.c
> @@ -1372,10 +1372,6 @@ static int pl330_submit_req(struct pl330_thread *thrd,
>  	u32 ccr;
>  	int ret = 0;
>  
> -	/* No Req or Unacquired Channel or DMAC */
> -	if (!desc || !thrd || thrd->free)
> -		return -EINVAL;
> -
>  	regs = thrd->dmac->base;
>  
>  	if (pl330->state == DYING
> -- 
> 1.9.1
> 

-- 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists