Re: [PATCH v2 5/6] platform/x86: intel_tdx_attest: Add TDX Guest attestation interface driver

From: Dave Hansen
Date: Thu Jul 08 2021 - 18:35:33 EST

On 7/8/21 3:21 PM, Andy Lutomirski wrote:
>> + ret = set_memory_decrypted((unsigned long)file->private_data,
>> + 1UL << get_order(QUOTE_SIZE));
>> + if (ret)
>> + break;
> Now private_data is decrypted. (And this operation is *expensive*. Why
> is it done at ioctl time?)

Expensive and permanently fractures the direct map.

I'm struggling to figure out why the direct map is even touched here.
Why not just use a vmalloc area mapping? You really just need *a*
decrypted mapping to the page. You don't need to make *every* mapping
to the page decrypted.