提交 5751a0b6 编写于 作者: P Peter Krempa

domcaps: Add function for initializing domain caps as unsupported

For future extensions of the domain caps it's useful to have a single
point that initializes all capabilities as unsupported by a driver. The
driver then can enable specific ones.
Signed-off-by: NPeter Krempa <pkrempa@redhat.com>
Reviewed-by: NJán Tomko <jtomko@redhat.com>
上级 f2316d8d
...@@ -116,9 +116,7 @@ virBhyveDomainCapsFill(virDomainCapsPtr caps, ...@@ -116,9 +116,7 @@ virBhyveDomainCapsFill(virDomainCapsPtr caps,
} }
caps->hostdev.supported = VIR_TRISTATE_BOOL_NO; caps->hostdev.supported = VIR_TRISTATE_BOOL_NO;
caps->iothreads = VIR_TRISTATE_BOOL_NO; virDomainCapsFeaturesInitUnsupported(caps);
caps->vmcoreinfo = VIR_TRISTATE_BOOL_NO;
caps->genid = VIR_TRISTATE_BOOL_NO;
caps->gic.supported = VIR_TRISTATE_BOOL_NO; caps->gic.supported = VIR_TRISTATE_BOOL_NO;
return 0; return 0;
......
...@@ -309,6 +309,20 @@ virDomainCapsEnumClear(virDomainCapsEnumPtr capsEnum) ...@@ -309,6 +309,20 @@ virDomainCapsEnumClear(virDomainCapsEnumPtr capsEnum)
} }
/**
* @caps: domain caps
*
* Initializes all features in 'caps' as unsupported.
*/
void
virDomainCapsFeaturesInitUnsupported(virDomainCapsPtr caps)
{
caps->iothreads = VIR_TRISTATE_BOOL_NO;
caps->vmcoreinfo = VIR_TRISTATE_BOOL_NO;
caps->genid = VIR_TRISTATE_BOOL_NO;
}
static int static int
virDomainCapsEnumFormat(virBufferPtr buf, virDomainCapsEnumFormat(virBufferPtr buf,
const virDomainCapsEnum *capsEnum, const virDomainCapsEnum *capsEnum,
......
...@@ -225,6 +225,8 @@ int virDomainCapsEnumSet(virDomainCapsEnumPtr capsEnum, ...@@ -225,6 +225,8 @@ int virDomainCapsEnumSet(virDomainCapsEnumPtr capsEnum,
unsigned int *values); unsigned int *values);
void virDomainCapsEnumClear(virDomainCapsEnumPtr capsEnum); void virDomainCapsEnumClear(virDomainCapsEnumPtr capsEnum);
void virDomainCapsFeaturesInitUnsupported(virDomainCapsPtr caps);
char * virDomainCapsFormat(const virDomainCaps *caps); char * virDomainCapsFormat(const virDomainCaps *caps);
int virDomainCapsDeviceDefValidate(const virDomainCaps *caps, int virDomainCapsDeviceDefValidate(const virDomainCaps *caps,
......
...@@ -202,6 +202,7 @@ virDomainCapsCPUUsableTypeToString; ...@@ -202,6 +202,7 @@ virDomainCapsCPUUsableTypeToString;
virDomainCapsDeviceDefValidate; virDomainCapsDeviceDefValidate;
virDomainCapsEnumClear; virDomainCapsEnumClear;
virDomainCapsEnumSet; virDomainCapsEnumSet;
virDomainCapsFeaturesInitUnsupported;
virDomainCapsFormat; virDomainCapsFormat;
virDomainCapsNew; virDomainCapsNew;
virSEVCapabilitiesFree; virSEVCapabilitiesFree;
......
...@@ -764,9 +764,8 @@ libxlMakeDomainCapabilities(virDomainCapsPtr domCaps, ...@@ -764,9 +764,8 @@ libxlMakeDomainCapabilities(virDomainCapsPtr domCaps,
libxlMakeDomainDeviceHostdevCaps(hostdev) < 0) libxlMakeDomainDeviceHostdevCaps(hostdev) < 0)
return -1; return -1;
domCaps->iothreads = VIR_TRISTATE_BOOL_NO; virDomainCapsFeaturesInitUnsupported(domCaps);
domCaps->vmcoreinfo = VIR_TRISTATE_BOOL_NO;
domCaps->genid = VIR_TRISTATE_BOOL_NO;
domCaps->gic.supported = VIR_TRISTATE_BOOL_NO; domCaps->gic.supported = VIR_TRISTATE_BOOL_NO;
return 0; return 0;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册