Hi Gerd,
On Wed, Oct 22, 2025 at 04:37:33PM +0200, Gerd Hoffmann wrote:
Hi,
> +struct IgvmNativeVpContextX64 {
> + uint64_t rax;
> + uint64_t rcx;
> + uint64_t rdx;
> + uint64_t rbx;
> + uint64_t rsp;
> + uint64_t rbp;
> + uint64_t rsi;
> + uint64_t rdi;
> + uint64_t r8;
> + uint64_t r9;
> + uint64_t r10;
> + uint64_t r11;
> + uint64_t r12;
> + uint64_t r13;
> + uint64_t r14;
> + uint64_t r15;
> + uint64_t rip;
> + uint64_t rflags;
> + uint64_t idtr_base;
> + uint16_t idtr_limit;
> + uint16_t reserved[2];
> + uint16_t gdtr_limit;
> + uint64_t gdtr_base;
> +
> + uint16_t code_selector;
> + uint16_t code_attributes;
> + uint32_t code_base;
> + uint32_t code_limit;
> +
> + uint16_t data_selector;
> + uint16_t data_attributes;
> + uint32_t data_base;
> + uint32_t data_limit;
> +
> + uint64_t gs_base;
> + uint64_t cr0;
> + uint64_t cr3;
> + uint64_t cr4;
> + uint64_t efer;
> +};
IIUC `R_TR` and `R_LDTR` are used by HVF in QEMU. Is there a reason
why you
didn't add them here?
They are not present in IgvmNativeVpContextX64, so you can't set them
via igvm for the initial vcpu state. Of course the guest can set them
later on.
Thanks for the clarification.
Reviewed-by: Luigi Leonardi <[email protected]>
take care,
Gerd