random: use init_utsname() instead of utsname()
Rather than going through the current-> indirection for utsname, at this point in boot, init_utsname()==utsname(), so just use it directly that way. Additionally, init_utsname() appears to be available nearly always, so move it into random_init_early(). Suggested-by: Kees Cook <keescook@chromium.org> Reviewed-by: Kees Cook <keescook@chromium.org> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
Родитель
08475dab7c
Коммит
dd54fd7dfa
|
@ -802,6 +802,7 @@ void __init random_init_early(const char *command_line)
|
|||
++i;
|
||||
}
|
||||
|
||||
_mix_pool_bytes(init_utsname(), sizeof(*(init_utsname())));
|
||||
_mix_pool_bytes(command_line, strlen(command_line));
|
||||
|
||||
/* Reseed if already seeded by earlier phases. */
|
||||
|
@ -820,7 +821,6 @@ void __init random_init(void)
|
|||
unsigned long entropy = random_get_entropy();
|
||||
ktime_t now = ktime_get_real();
|
||||
|
||||
_mix_pool_bytes(utsname(), sizeof(*(utsname())));
|
||||
_mix_pool_bytes(&now, sizeof(now));
|
||||
_mix_pool_bytes(&entropy, sizeof(entropy));
|
||||
add_latent_entropy();
|
||||
|
|
Загрузка…
Ссылка в новой задаче