mirror of
https://github.com/followmsi/android_kernel_google_msm.git
synced 2024-11-06 23:17:41 +00:00
hwrng: cleanup in hwrng_register()
My static checker complains that: drivers/char/hw_random/core.c:341 hwrng_register() warn: we tested 'old_rng' before and it was 'false' The problem is that sometimes we test "if (!old_rng)" and sometimes we test "if (must_register_misc)". The static checker knows they are equivalent but a human being reading the code could easily be confused. I have simplified the code by removing the "must_register_misc" variable and I have removed the redundant check on "if (!old_rng)". Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Reviewed-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
1bb09a594b
commit
a303e3006b
1 changed files with 3 additions and 7 deletions
|
@ -302,7 +302,6 @@ err_misc_dereg:
|
||||||
|
|
||||||
int hwrng_register(struct hwrng *rng)
|
int hwrng_register(struct hwrng *rng)
|
||||||
{
|
{
|
||||||
int must_register_misc;
|
|
||||||
int err = -EINVAL;
|
int err = -EINVAL;
|
||||||
struct hwrng *old_rng, *tmp;
|
struct hwrng *old_rng, *tmp;
|
||||||
|
|
||||||
|
@ -327,7 +326,6 @@ int hwrng_register(struct hwrng *rng)
|
||||||
goto out_unlock;
|
goto out_unlock;
|
||||||
}
|
}
|
||||||
|
|
||||||
must_register_misc = (current_rng == NULL);
|
|
||||||
old_rng = current_rng;
|
old_rng = current_rng;
|
||||||
if (!old_rng) {
|
if (!old_rng) {
|
||||||
err = hwrng_init(rng);
|
err = hwrng_init(rng);
|
||||||
|
@ -336,13 +334,11 @@ int hwrng_register(struct hwrng *rng)
|
||||||
current_rng = rng;
|
current_rng = rng;
|
||||||
}
|
}
|
||||||
err = 0;
|
err = 0;
|
||||||
if (must_register_misc) {
|
if (!old_rng) {
|
||||||
err = register_miscdev();
|
err = register_miscdev();
|
||||||
if (err) {
|
if (err) {
|
||||||
if (!old_rng) {
|
hwrng_cleanup(rng);
|
||||||
hwrng_cleanup(rng);
|
current_rng = NULL;
|
||||||
current_rng = NULL;
|
|
||||||
}
|
|
||||||
goto out_unlock;
|
goto out_unlock;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue