Commit 9b29b6b2 authored by Jason A. Donenfeld's avatar Jason A. Donenfeld
Browse files

random: avoid checking crng_ready() twice in random_init()



The current flow expands to:

    if (crng_ready())
       ...
    else if (...)
        if (!crng_ready())
            ...

The second crng_ready() call is redundant, but can't so easily be
optimized out by the compiler.

This commit simplifies that to:

    if (crng_ready()
        ...
    else if (...)
        ...

Fixes: 560181c2 ("random: move initialization functions out of hot pages")
Cc: stable@vger.kernel.org
Cc: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: default avatarJason A. Donenfeld <Jason@zx2c4.com>
parent 77991645
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -801,7 +801,7 @@ int __init random_init(const char *command_line)
	if (crng_ready())
		crng_reseed();
	else if (trust_cpu)
		credit_init_bits(arch_bytes * 8);
		_credit_init_bits(arch_bytes * 8);
	used_arch_random = arch_bytes * 8 >= POOL_READY_BITS;

	WARN_ON(register_pm_notifier(&pm_notifier));