Re: [PATCH v2 6/6] x86/vmware: Add TDX hypercall support

From: Alexey Makhalov
Date: Tue Dec 05 2023 - 19:11:43 EST




On 12/5/23 3:03 PM, Dave Hansen wrote:
On 12/5/23 13:41, Alexey Makhalov wrote:
I don't really like it much.  This does a generic thing (make a TDX
hypercall) with a specific name ("vmware_").  If you want to make an
argument that a certain chunk of the __tdx_hypercall() space is just for
VMWare and you also add a VMWare-specific check and then export *that*,
it might be acceptable.

But I don't want random modules able to make random, unrestricted TDX
hypercalls.  That's asking for trouble.

Considering exporting of __tdx_hypercall for random modules is not an
option, what VMware specific checks you are suggesting?

Make sure it can only be called running on VMWare guests. A check for
X86_HYPER_VMWARE seems simple enough.

Second, unless the space is *HUGE*, you want to be exporting things like
__vmware_platform() or vmware_legacy_x2apic_available(), *NOT* the
underlying hypercall functions.

We want to make sure that the interfaces are well defined and bounded.

Thanks Dave and Tim for your suggestions. I followed Dave recommendation to have a simple check for X86_HYPER_VMWARE.

Please review patch 6, which I'll send shortly.

Thanks,
--Alexey

--
This electronic communication and the information and any files transmitted with it, or attached to it, are confidential and are intended solely for the use of the individual or entity to whom it is addressed and may contain information that is confidential, legally privileged, protected by privacy laws, or otherwise restricted from disclosure to anyone else. If you are not the intended recipient or the person responsible for delivering the e-mail to the intended recipient, you are hereby notified that any use, copying, distributing, dissemination, forwarding, printing, or copying of this e-mail is strictly prohibited. If you received this e-mail in error, please return the e-mail to the sender, delete it from your computer, and destroy any printed copy of it.