]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
random: avoid checking crng_ready() twice in random_init()
authorJason A. Donenfeld <Jason@zx2c4.com>
Tue, 7 Jun 2022 07:44:07 +0000 (09:44 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 25 Jun 2022 09:46:42 +0000 (11:46 +0200)
commitaafc845f74e40f7c8f4ade6424c413b71f320f89
treee53163bd81e51d798bd2ddf07630275729953678
parent9ed7b5bf2c4cea81e87e8f72e9a0670163a7bb59
random: avoid checking crng_ready() twice in random_init()

commit 9b29b6b20376ab64e1b043df6301d8a92378e631 upstream.

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: 560181c27b58 ("random: move initialization functions out of hot pages")
Cc: stable@vger.kernel.org
Cc: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/char/random.c