Messages in this thread | | | Subject | Re: SEV guest regression in 4.18 | From | Brijesh Singh <> | Date | Wed, 22 Aug 2018 15:11:20 -0500 |
| |
Hi Sean,
On 08/22/2018 10:00 AM, Sean Christopherson wrote: > On Wed, Aug 22, 2018 at 10:14:17AM +0200, Borislav Petkov wrote: >> Dropping Pavel as it bounces. >> >> On Tue, Aug 21, 2018 at 11:07:38AM -0500, Brijesh Singh wrote: >>> The tsc_early_init() is called before setup_arch() -> init_mem_mapping. >> >> Ok, I see it, thanks for explaining. >> >> So back to your original ideas - I'm wondering whether we should define >> a chunk of memory which the hypervisor and guest can share and thus >> communicate over... Something ala SEV-ES also with strictly defined >> layout and put all those variables there. And then the guest can map >> decrypted. > > What about creating a data section specifically for shared memory? > The section would be PMD aligned and sized so that it could be mapped > appropriately without having to fracture the page. Then define a > macro to easily declare data in the new section, a la __read_mostly. >
Yes, this is one of approach I have in mind. It will avoid splitting the larger pages; I am thinking that early in boot code we can lookup for this special section and decrypt it in-place and probably maps with C=0. Only downside, it will increase data section footprint a bit because we need to align this section to PM_SIZE.
>> There might be something similar though, I dunno.
>> >> Maybe Paolo has a better idea... >> >> -- >> Regards/Gruss, >> Boris. >> >> SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg) >> --
| |