[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <977e362f-bd0b-4653-8d47-c369b71c7dda@intel.com>
Date: Tue, 12 Nov 2024 17:11:25 -0800
From: Dave Hansen <dave.hansen@...el.com>
To: Rick Edgecombe <rick.p.edgecombe@...el.com>, pbonzini@...hat.com,
seanjc@...gle.com
Cc: yan.y.zhao@...el.com, isaku.yamahata@...il.com, kai.huang@...el.com,
kvm@...r.kernel.org, linux-kernel@...r.kernel.org,
tony.lindgren@...ux.intel.com, xiaoyao.li@...el.com,
reinette.chatre@...el.com, Isaku Yamahata <isaku.yamahata@...el.com>,
Sean Christopherson <sean.j.christopherson@...el.com>,
Binbin Wu <binbin.wu@...ux.intel.com>, Yuan Yao <yuan.yao@...el.com>
Subject: Re: [PATCH v2 10/25] x86/virt/tdx: Add SEAMCALL wrappers for TDX
flush operations
On 10/30/24 12:00, Rick Edgecombe wrote:
> +u64 tdh_vp_flush(u64 tdvpr)
> +{
> + struct tdx_module_args args = {
> + .rcx = tdvpr,
> + };
> +
> + return seamcall(TDH_VP_FLUSH, &args);
> +}
> +EXPORT_SYMBOL_GPL(tdh_vp_flush);
This also just isn't looking right. The 'tdvpr' is a _thing_. It has a
type and it came back from some _other_ bit of the same type.
So, in the worst case, this could be:
struct tdvpr {
u64 tdvpr_paddr;
};
u64 tdh_vp_flush(struct tdvpr *tdpr)
{
...
But just passing around physical addresses and then having this things
stick it right in to seamcall() doesn't seem like the best we can do.
Powered by blists - more mailing lists