Skip to content

Unify register representations across all Hypervisor implementations #312

@dblnz

Description

@dblnz

Currently, registers for the KVMDriver, HypervLinuxDriver and HypervWindowsDriver are handled in a similar manner.
It would be helpful to unify these registers in as type-safe a way as possible.

Some features of this unified API:

  • Support for just the registers we need (e.g. RSP, RIP, pagetable-related registers, etc...)
  • Use of GuestPtr for register values as appropriate (e.g. RSP which defines a stack pointer, which can only be a guest address)
  • Prevents callers from setting any unsupported register values
  • Ensures all required registers are set before a hypervisor can use them
  • No support for optional registers. The registers are either all set or none are set

Metadata

Metadata

Assignees

No one assigned

    Labels

    lifecycle/confirmedBug is verified or proposal seems reasonable

    Projects

    Status

    No status

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions