Re: [PATCH 4/9] drivers: hv: Mark shared pages unencrypted in SEV-SNP enlightened guest

Vitaly Kuznetsov
2023-06-08T08:55:52Z

Tianyu Lan <ltykernel@gmail.com> writes:

> On 6/5/2023 8:54 PM, Vitaly Kuznetsov wrote:
>>> @@ -402,7 +417,14 @@ int hv_common_cpu_die(unsigned int cpu)
>>>
>>> local_irq_restore(flags);
>>>
>>> - kfree(mem);
>>> + if (hv_isolation_type_en_snp()) {
>>> + ret = set_memory_encrypted((unsigned long)mem, pgcount);
>>> + if (ret)
>>> + pr_warn("Hyper-V: Failed to encrypt input arg on cpu%d: %d\n",
>>> + cpu, ret);
>>> + /* It's unsafe to free 'mem'. */
>>> + return 0;
>> Why is it unsafe to free 'mem' if ret == 0? Also, why don't we want to
>> proparate non-zero 'ret' from here to fail CPU offlining?
>>
>
> Based on Michael's patch the mem will not be freed during cpu offline.
> https://lwn.net/ml/linux-kernel/87cz2j5zrc.fsf@redhat.com/
> So I think it's unnessary to encrypt the mem again here.

Good, you can probably include Michael's patch in your next submission
then (unless it gets merged before that).

--
Vitaly