mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 03:12:22 +00:00
conf: domain: Add hyperv passthrough mode
Signed-off-by: Tim Wiederhake <twiederh@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
da9f798445
commit
9c2afd17fd
@ -141,6 +141,7 @@ VIR_ENUM_IMPL(virDomainHyperVMode,
|
||||
VIR_DOMAIN_HYPERV_MODE_LAST,
|
||||
"none",
|
||||
"custom",
|
||||
"passthrough",
|
||||
);
|
||||
|
||||
VIR_ENUM_IMPL(virDomainBoot,
|
||||
|
@ -158,6 +158,7 @@ VIR_ENUM_DECL(virDomainOS);
|
||||
typedef enum {
|
||||
VIR_DOMAIN_HYPERV_MODE_NONE = 0,
|
||||
VIR_DOMAIN_HYPERV_MODE_CUSTOM,
|
||||
VIR_DOMAIN_HYPERV_MODE_PASSTHROUGH,
|
||||
|
||||
VIR_DOMAIN_HYPERV_MODE_LAST
|
||||
} virDomainHyperVMode;
|
||||
|
@ -6713,6 +6713,22 @@ qemuBuildCpuCommandLine(virCommand *cmd,
|
||||
}
|
||||
|
||||
if (def->features[VIR_DOMAIN_FEATURE_HYPERV] != VIR_DOMAIN_HYPERV_MODE_NONE) {
|
||||
switch ((virDomainHyperVMode) def->features[VIR_DOMAIN_FEATURE_HYPERV]) {
|
||||
case VIR_DOMAIN_HYPERV_MODE_CUSTOM:
|
||||
break;
|
||||
|
||||
case VIR_DOMAIN_HYPERV_MODE_PASSTHROUGH:
|
||||
virBufferAsprintf(&buf, ",hv-%s=on", "passthrough");
|
||||
break;
|
||||
|
||||
case VIR_DOMAIN_HYPERV_MODE_NONE:
|
||||
case VIR_DOMAIN_HYPERV_MODE_LAST:
|
||||
default:
|
||||
virReportEnumRangeError(virDomainHyperVMode,
|
||||
def->features[VIR_DOMAIN_FEATURE_HYPERV]);
|
||||
return -1;
|
||||
}
|
||||
|
||||
for (i = 0; i < VIR_DOMAIN_HYPERV_LAST; i++) {
|
||||
switch ((virDomainHyperv) i) {
|
||||
case VIR_DOMAIN_HYPERV_RELAXED:
|
||||
|
Loading…
x
Reference in New Issue
Block a user