unsupported

Specify what the hypervisor should do if it can't successfully complete the emulation of a guest instruction

Synopsis:

unsupported instruction | reference | register abort | fail | ignore

Description:

Only one type-action pair can be used per unsupported option instance. Specify the option for each unsupported type you want to configure.

Types:

instruction
The hypervisor does't support emulation of the instruction. If unspecified, defaults to fail.
reference
The instruction references a memory (or IO port on x86) location to which the guest doesn't have access. If unspecified, defaults to ignore.
register
The guest is attempting to use a system register (ARM) or MSR (x86) that the hypervisor doesn't support. If unspecified, defaults to fail.

Actions:

abort
Display a message indicating the failure and guest state, then terminate the qvm process instance hosting the offending guest.
fail
Deliver an appropriate CPU exception to the offending guest.
ignore
Treat the instruction as a no-op, except in the case of guest attempts to read from an unsupported memory or IO port location, which sets the destination of the instruction to all one bits (~0).

If the hypervisor encounters a condition of a type for which no action has been specified, the hypervisor uses its default action for that type.

Example:

The following configuration specifies that:

unsupported register abort
unsupported reference fail
Note: The configuration doesn't specify the instruction type, so the hypervisor will use its default configuration, which for this type is fail.