mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-10 12:57:06 +09:00
s390: zcrypt: initialize variables before_use
[ Upstream commit 913140e221 ]
The 'func_code' variable gets printed in debug statements without
a prior initialization in multiple functions, as reported when building
with clang:
drivers/s390/crypto/zcrypt_api.c:659:6: warning: variable 'func_code' is used uninitialized whenever 'if' condition is true
[-Wsometimes-uninitialized]
if (mex->outputdatalength < mex->inputdatalength) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/s390/crypto/zcrypt_api.c:725:29: note: uninitialized use occurs here
trace_s390_zcrypt_rep(mex, func_code, rc,
^~~~~~~~~
drivers/s390/crypto/zcrypt_api.c:659:2: note: remove the 'if' if its condition is always false
if (mex->outputdatalength < mex->inputdatalength) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/s390/crypto/zcrypt_api.c:654:24: note: initialize the variable 'func_code' to silence this warning
unsigned int func_code;
^
Add initializations to all affected code paths to shut up the warning
and make the warning output consistent.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
e911469849
commit
a3713f2ceb
@@ -224,6 +224,7 @@ static long zcrypt_rsa_modexpo(struct ica_rsa_modexpo *mex)
|
||||
trace_s390_zcrypt_req(mex, TP_ICARSAMODEXPO);
|
||||
|
||||
if (mex->outputdatalength < mex->inputdatalength) {
|
||||
func_code = 0;
|
||||
rc = -EINVAL;
|
||||
goto out;
|
||||
}
|
||||
@@ -298,6 +299,7 @@ static long zcrypt_rsa_crt(struct ica_rsa_modexpo_crt *crt)
|
||||
trace_s390_zcrypt_req(crt, TP_ICARSACRT);
|
||||
|
||||
if (crt->outputdatalength < crt->inputdatalength) {
|
||||
func_code = 0;
|
||||
rc = -EINVAL;
|
||||
goto out;
|
||||
}
|
||||
@@ -483,6 +485,7 @@ static long zcrypt_send_ep11_cprb(struct ep11_urb *xcrb)
|
||||
|
||||
targets = kcalloc(target_num, sizeof(*targets), GFP_KERNEL);
|
||||
if (!targets) {
|
||||
func_code = 0;
|
||||
rc = -ENOMEM;
|
||||
goto out;
|
||||
}
|
||||
@@ -490,6 +493,7 @@ static long zcrypt_send_ep11_cprb(struct ep11_urb *xcrb)
|
||||
uptr = (struct ep11_target_dev __force __user *) xcrb->targets;
|
||||
if (copy_from_user(targets, uptr,
|
||||
target_num * sizeof(*targets))) {
|
||||
func_code = 0;
|
||||
rc = -EFAULT;
|
||||
goto out_free;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user