On Fri, 2024-11-22 at 08:26 -0800, Dave Hansen wrote: > On 11/21/24 12:14, Adrian Hunter wrote: > > +u64 tdh_vp_enter(u64 tdvpr, struct tdx_module_args *args) > > +{ > > + args->rcx = tdvpr; > > + > > + return __seamcall_saved_ret(TDH_VP_ENTER, args); > > +} > > +EXPORT_SYMBOL_GPL(tdh_vp_enter); > > I made a similar comment on another series, but it stands here too: the > typing of this wrappers really needs a closer look. Passing u64's around > everywhere means zero type safety. > > Type safety is the reason that we have types like pte_t and pgprot_t in > mm code even though they're really just longs (most of the time). > > I'd suggest keeping the tdx_td_page type as long as possible, probably > until (for example) the ->rcx assignment, like this: > > args->rcx = td_page.pa; Any thoughts on the approach here to the type questions? https://lore.kernel.org/kvm/20241115202028.1585487-1-rick.p.edgecombe@xxxxxxxxx/