Re: [PATCH RFC 1/7] x86/virt/tdx: Add SEAMCALL wrapper to enter/exit TDX guest
From: Dave Hansen
Date: Fri Nov 22 2024 - 11:33:41 EST
On 11/22/24 03:10, Adrian Hunter wrote:
> +struct tdh_vp_enter_tdcall {
> + u64 reg_mask : 32,
> + vm_idx : 2,
> + reserved_0 : 30;
> + u64 data[TDX_ERR_DATA_PART_2];
> + u64 fn; /* Non-zero for hypercalls, zero otherwise */
> + u64 subfn;
> + union {
> + struct tdh_vp_enter_vmcall vmcall;
> + struct tdh_vp_enter_gettdvmcallinfo gettdvmcallinfo;
> + struct tdh_vp_enter_mapgpa mapgpa;
> + struct tdh_vp_enter_getquote getquote;
> + struct tdh_vp_enter_reportfatalerror reportfatalerror;
> + struct tdh_vp_enter_cpuid cpuid;
> + struct tdh_vp_enter_mmio mmio;
> + struct tdh_vp_enter_hlt hlt;
> + struct tdh_vp_enter_io io;
> + struct tdh_vp_enter_rd rd;
> + struct tdh_vp_enter_wr wr;
> + };
> +};
Let's say someone declares this:
struct tdh_vp_enter_mmio {
u64 size;
u64 mmio_addr;
u64 direction;
u64 value;
};
How long is that going to take you to debug?