Re: Non-random RDRAND Re: [PATCH] x86/CPU/AMD: Clear RDRAND CPUID bit on AMD family 15h/16h

From: Lendacky, Thomas
Date: Thu Aug 15 2019 - 09:01:22 EST


On 8/14/19 6:24 PM, Pavel Machek wrote:
> On Wed 2019-08-14 21:17:41, Lendacky, Thomas wrote:
>> From: Tom Lendacky <thomas.lendacky@xxxxxxx>
>>
>> There have been reports of RDRAND issues after resuming from suspend on
>> some AMD family 15h and family 16h systems. This issue stems from BIOS
>> not performing the proper steps during resume to ensure RDRAND continues
>> to function properly.
>
> Burn it with fire!
>
> I mean... people were afraid RDRAND would be backdoored, and you now
> confirm ... it indeed _is_ backdoored? /., here's news for you!
>
> So what is the impact? Does it give random-looking but predictable
> numbers after resume? Does it give all zeros? Something else?

See this article:
https://www.phoronix.com/scan.php?page=news_item&px=AMD-CPUs-RdRand-Suspend

Thanks,
Tom

>
>>
>> + rdrand_force [X86]
>> + On certain AMD processors, the advertisement of the
>> + RDRAND instruction has been disabled by the kernel
>> + because of buggy BIOS support, specifically around the
>> + suspend/resume path. This option allows for overriding
>> + that decision if it is known that the BIOS support for
>> + RDRAND is not buggy on the system.
>
> But this is not how we normally deal with buggy BIOSes. We don't want
> user to have to decide this...
>
> Should we introduce black-list or white-list of BIOS versions?
>
> Hmm. Actually.
>
> You are the CPU vendor. Surely you can tell us how to init RDRAND in
> kernel if BIOS failed to do that... can you?
>
> Pavel
>