diff options
| author | 2022-02-12 23:54:09 +0100 | |
|---|---|---|
| committer | 2022-02-21 21:14:17 +0100 | |
| commit | da792c6d5f59a76c10a310c5d4c93428fd18f996 (patch) | |
| tree | be6777383063e1091a89d960551f6ef6bee6d26f /virt/git:/ssh:/git@git.zx2c4.com | |
| parent | random: do not take pool spinlock at boot (diff) | |
| download | linux-dev-da792c6d5f59a76c10a310c5d4c93428fd18f996.tar.xz linux-dev-da792c6d5f59a76c10a310c5d4c93428fd18f996.zip | |
random: unify early init crng load accounting
crng_fast_load() and crng_slow_load() have different semantics:
- crng_fast_load() xors and accounts with crng_init_cnt.
- crng_slow_load() hashes and doesn't account.
However add_hwgenerator_randomness() can afford to hash (it's called
from a kthread), and it should account. Additionally, ones that can
afford to hash don't need to take a trylock but can take a normal lock.
So, we combine these into one function, crng_pre_init_inject(), which
allows us to control these in a uniform way. This will make it simpler
later to simplify this all down when the time comes for that.
Cc: Theodore Ts'o <tytso@mit.edu>
Reviewed-by: Dominik Brodowski <linux@dominikbrodowski.net>
Reviewed-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'virt/git:/ssh:/git@git.zx2c4.com')
0 files changed, 0 insertions, 0 deletions
