Re: [PATCH v6 23/34] x86, realmode: Decrypt trampoline area if memory encryption is active

From: Tom Lendacky
Date: Wed Jun 14 2017 - 12:39:15 EST


On 6/14/2017 11:24 AM, Borislav Petkov wrote:
On Wed, Jun 07, 2017 at 02:17:09PM -0500, Tom Lendacky wrote:
When Secure Memory Encryption is enabled, the trampoline area must not
be encrypted. A CPU running in real mode will not be able to decrypt
memory that has been encrypted because it will not be able to use addresses
with the memory encryption mask.

A recent change that added a new system_state value exposed a warning
issued by early_ioreamp() when the system_state was not SYSTEM_BOOTING.
At the stage where the trampoline area is decrypted, the system_state is
now SYSTEM_SCHEDULING. The check was changed to issue a warning if the
system_state is greater than or equal to SYSTEM_RUNNING.

This piece along with the hunk touching system_state absolutely needs to
be a separate patch as it is unrelated.

Yup, will do.

Thanks,
Tom