Re: [PATCH 1/4] crypto: sunxi - don't print uninitialized data
On Mon, Jan 25, 2016 at 05:53:48PM +0100, Arnd Bergmann wrote: > gcc correctly warns that the printk output contains a variable that > is not initialized in some cases: > > drivers/crypto/sunxi-ss/sun4i-ss-cipher.c: In function 'sun4i_ss_cipher_poll': > drivers/crypto/sunxi-ss/sun4i-ss-cipher.c:254:76: warning: 'todo' may be used > uninitialized in this function [-Wmaybe-uninitialized] > drivers/crypto/sunxi-ss/sun4i-ss-cipher.c:144:15: note: 'todo' was declared > here > > This adds an explicit initialization to zero in the exact case where it > was missing, to avoid leaking stack data to the console and to shut up > that warning. > > Signed-off-by: Arnd Bergmann This is actually a bogus warning because todo is always initialised but gcc can't see that because it's behind multiple conditionals. It would be great if we can restructure the code so that gcc can see this while at the same time also improving the readability of the loop. Otherwise just initialise it at the top or use uninitialised_var. Thanks, -- Email: Herbert Xu Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/4] crypto: sunxi - don't print uninitialized data
On Monday 25 January 2016 17:53:48 Arnd Bergmann wrote: > gcc correctly warns that the printk output contains a variable that > is not initialized in some cases: > > drivers/crypto/sunxi-ss/sun4i-ss-cipher.c: In function 'sun4i_ss_cipher_poll': > drivers/crypto/sunxi-ss/sun4i-ss-cipher.c:254:76: warning: 'todo' may be used > uninitialized in this function [-Wmaybe-uninitialized] > drivers/crypto/sunxi-ss/sun4i-ss-cipher.c:144:15: note: 'todo' was declared > here > > This adds an explicit initialization to zero in the exact case where it > was missing, to avoid leaking stack data to the console and to shut up > that warning. > > Signed-off-by: Arnd Bergmann > Sorry for the broken ordering and missing cover letter. I just submitted three crypto patches: [PATCH 1/4] crypto: sunxi - don't print uninitialized data [PATCH] crypto: hash - select CRYPTO_HASH where needed [PATCH 1/2] crypto: jitterentropy - always select CRYPTO_RNG These address independent build issues, and there is no ordering between them. None of them are important, so please queue them up for 4.6. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 1/4] crypto: sunxi - don't print uninitialized data
gcc correctly warns that the printk output contains a variable that is not initialized in some cases: drivers/crypto/sunxi-ss/sun4i-ss-cipher.c: In function 'sun4i_ss_cipher_poll': drivers/crypto/sunxi-ss/sun4i-ss-cipher.c:254:76: warning: 'todo' may be used uninitialized in this function [-Wmaybe-uninitialized] drivers/crypto/sunxi-ss/sun4i-ss-cipher.c:144:15: note: 'todo' was declared here This adds an explicit initialization to zero in the exact case where it was missing, to avoid leaking stack data to the console and to shut up that warning. Signed-off-by: Arnd Bergmann --- drivers/crypto/sunxi-ss/sun4i-ss-cipher.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/crypto/sunxi-ss/sun4i-ss-cipher.c b/drivers/crypto/sunxi-ss/sun4i-ss-cipher.c index a19ee127edca..db52ae16c147 100644 --- a/drivers/crypto/sunxi-ss/sun4i-ss-cipher.c +++ b/drivers/crypto/sunxi-ss/sun4i-ss-cipher.c @@ -246,6 +246,8 @@ static int sun4i_ss_cipher_poll(struct ablkcipher_request *areq) sg_miter_next(&mi); oi = 0; } + } else { + todo = 0; } spaces = readl(ss->base + SS_FCSR); -- 2.7.0 -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html