Messages in this thread | | | Subject | Re: [Part1 PATCH v4 15/17] percpu: introduce DEFINE_PER_CPU_UNENCRYPTED | From | Brijesh Singh <> | Date | Tue, 19 Sep 2017 08:50:20 -0500 |
| |
Hi Boris,
On 09/19/2017 05:39 AM, Borislav Petkov wrote: ...
>> @@ -815,6 +825,7 @@ >> . = ALIGN(cacheline); \ >> *(.data..percpu) \ >> *(.data..percpu..shared_aligned) \ >> + PERCPU_UNENCRYPTED_SECTION \ >> VMLINUX_SYMBOL(__per_cpu_end) = .; > > So looking at this more: I'm wondering if we can simply reuse the > PER_CPU_SHARED_ALIGNED_SECTION definition which is for shared per-CPU > sections. Instead of introducing a special section which is going to be > used only by SEV, practically. > > Because "shared" also kinda implies that it is shared by multiple agents > and those agents can just as well be guest and hypervisor. And then that > patch is gone too. > > Hmmm...? >
"..shared_aligned" section does not start and end with page-size alignment. Since the C-bit works on PAGE_SIZE alignment hence the "..unencrypted" section starts and ends with page-size alignment. The closest I can find is "..page_aligned" but again it does not end with page-size alignment.
Additionally, since we clear the C-bit from unencrypted section hence we should avoid overloading the existing section -- we don't want to expose more than we wish.
| |