[PATCH] rockchip: board: Increase rng-seed size to make it sufficient for modern Linux

Dragan Simic dsimic at manjaro.org
Mon Oct 14 12:37:48 CEST 2024


Hello Marek,

On 2024-10-14 12:35, Marek Vasut wrote:
> On 10/14/24 12:32 PM, Dragan Simic wrote:
>> On 2024-10-14 12:26, Alex ThreeD wrote:
>>> On Mon, Oct 14, 2024 at 12:10 AM Marek Vasut <marex at denx.de> wrote:
>>>> Let's make this override-able via environment variable, because this
>>>> might be growing in the future again. Does this work ?
>>>> 
>>>> size_t len = env_get_ulong("kaslrseed_size", 10, 32);
>>> 
>>> Maybe `env_get_hex("rng_seed_size", 32)` would be better? As most 
>>> other env are
>>> hexadecimal.
>>> 
>>> Actually it seems that entropy required to init pool early has 
>>> decreased in
>>> Linux 5.19 from 64 bytes (2 * CHACHA_KEY_SIZE) to 32 bytes
>>> (BLAKE2S_HASH_SIZE)
>>> https://elixir.bootlin.com/linux/v5.18/source/drivers/char/random.c#L236
>>> https://elixir.bootlin.com/linux/v5.19/source/drivers/char/random.c#L551
>>> Anyway config knob should not harm.
>> 
>> I think that the value received from the new environment variable
>> should be accepted only if it's greater than some hardcoded value,
>> in this case 32.  That way, someone won't be able to misconfigure
>> their board environment and cause the early random pool initialization
>> to be postponed.
> 
> Using low number could be useful for testing. Print a WARNING if the
> number is too low perhaps?

Yes, testing with low values has also crossed my mind.  Priting such
warnings would be a viable option.


More information about the U-Boot mailing list