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  linux-cve-announce  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]
Message-ID: <fb8bc993-2adc-6a70-2643-6195ba5f020f@c-s.fr>
Date:   Wed, 26 Sep 2018 15:58:48 +0200
From:   Christophe LEROY <christophe.leroy@....fr>
To:     zhong jiang <zhongjiang@...wei.com>, paulus@...ba.org,
        benh@...nel.crashing.org, mpe@...erman.id.au
Cc:     linuxppc-dev@...ts.ozlabs.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] powerpc: Move a dereference below a NULL test



Le 26/09/2018 à 13:46, zhong jiang a écrit :
> It is safe to move dereference below a NULL test.
> 
> Signed-off-by: zhong jiang <zhongjiang@...wei.com>
> ---
>   arch/powerpc/kernel/cacheinfo.c | 5 ++---
>   1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/powerpc/kernel/cacheinfo.c b/arch/powerpc/kernel/cacheinfo.c
> index a8f20e5..7f19714 100644
> --- a/arch/powerpc/kernel/cacheinfo.c
> +++ b/arch/powerpc/kernel/cacheinfo.c
> @@ -401,14 +401,13 @@ static struct cache *cache_lookup_or_instantiate(struct device_node *node,
>   	struct cache *cache;
>   
>   	cache = cache_lookup_by_node(node);
> +	if (!cache)
> +		cache = cache_do_one_devnode(node, level);

But by doing this, you change the meaning of the following warning. Is 
that what you want ? In that case the text of the WARN_ONCE() should be 
changed, because the mismatch is not only on lookup now.

Christophe

>   
>   	WARN_ONCE(cache && cache->level != level,
>   		  "cache level mismatch on lookup (got %d, expected %d)\n",
>   		  cache->level, level);
>   
> -	if (!cache)
> -		cache = cache_do_one_devnode(node, level);
> -
>   	return cache;
>   }
>   
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ