On 05/29/2018 12:07 PM, Theodore Y. Ts'o wrote:
> On Tue, May 29, 2018 at 11:01:07AM -0400, Prarit Bhargava wrote:
>> Kees, in early boot no pool is available so the stack canary is initialized 
>> from
>> the TSC.  Later in boot, the stack canary will use the the crng.
>>
>> ie) in early boot only TSC is okay, and late boot (when crng_ready() is true)
>> the pool will be used.
> 
> But that means all of the kernel threads (e.g., workqueues, et. al)
> would not be well protected by the stack canary.  That
> seems.... rather unfortunate.

Well, as stated the TSC is used as a source of entropy in early boot.  It's
always been that way and get_random_bytes() AFAICT has always returned 0.  CPUs
added later on via hotplug do use get_random_bytes().

Does anyone cc'd have a better idea on how to get another source of entropy this
early in boot?

P.

> 
>                                                    - Ted
> 

Reply via email to