On 03/21/2016 01:28 PM, Andrea Bolognani wrote:
The struct contains a single boolean field which can be
applied to domain capabilities that do not represent device
availability.
Instead of trying to come up with a more generic name just
get rid of the struct altogether.
---
src/conf/domain_capabilities.c | 6 +++---
src/conf/domain_capabilities.h | 14 ++++----------
src/qemu/qemu_capabilities.c | 8 ++++----
tests/domaincapstest.c | 8 ++++----
4 files changed, 15 insertions(+), 21 deletions(-)
The construct was added as part of commit id '614581f32' - not sure if
Michal felt more bool's were going to be added to virDomainCapsDevice.
I see this affects patch 4 - I think it would be a good idea to see if
Michal had "other designs" in mind before changing this. That could be
separate too...
John
diff --git a/src/conf/domain_capabilities.c
b/src/conf/domain_capabilities.c
index 0e32f52..466c0c6 100644
--- a/src/conf/domain_capabilities.c
+++ b/src/conf/domain_capabilities.c
@@ -187,9 +187,9 @@ virDomainCapsStringValuesFormat(virBufferPtr buf,
#define FORMAT_PROLOGUE(item) \
do { \
virBufferAsprintf(buf, "<" #item "
supported='%s'%s\n", \
- item->device.supported ? "yes" : "no",
\
- item->device.supported ? ">" :
"/>"); \
- if (!item->device.supported) \
+ item->supported ? "yes" : "no",
\
+ item->supported ? ">" : "/>");
\
+ if (!item->supported) \
return; \
virBufferAdjustIndent(buf, 2); \
} while (0)
diff --git a/src/conf/domain_capabilities.h b/src/conf/domain_capabilities.h
index 597ac75..3eacb35 100644
--- a/src/conf/domain_capabilities.h
+++ b/src/conf/domain_capabilities.h
@@ -44,16 +44,10 @@ struct _virDomainCapsStringValues {
size_t nvalues; /* number of strings */
};
-typedef struct _virDomainCapsDevice virDomainCapsDevice;
-typedef virDomainCapsDevice *virDomainCapsDevicePtr;
-struct _virDomainCapsDevice {
- bool supported; /* true if <devtype> is supported by hypervisor */
-};
-
typedef struct _virDomainCapsLoader virDomainCapsLoader;
typedef virDomainCapsLoader *virDomainCapsLoaderPtr;
struct _virDomainCapsLoader {
- virDomainCapsDevice device;
+ bool supported;
virDomainCapsStringValues values; /* Info about values for the element */
virDomainCapsEnum type; /* Info about virDomainLoader */
virDomainCapsEnum readonly; /* Info about readonly:virTristateBool */
@@ -62,14 +56,14 @@ struct _virDomainCapsLoader {
typedef struct _virDomainCapsOS virDomainCapsOS;
typedef virDomainCapsOS *virDomainCapsOSPtr;
struct _virDomainCapsOS {
- virDomainCapsDevice device;
+ bool supported;
virDomainCapsLoader loader; /* Info about virDomainLoaderDef */
};
typedef struct _virDomainCapsDeviceDisk virDomainCapsDeviceDisk;
typedef virDomainCapsDeviceDisk *virDomainCapsDeviceDiskPtr;
struct _virDomainCapsDeviceDisk {
- virDomainCapsDevice device;
+ bool supported;
virDomainCapsEnum diskDevice; /* Info about virDomainDiskDevice enum values */
virDomainCapsEnum bus; /* Info about virDomainDiskBus enum values */
/* add new fields here */
@@ -78,7 +72,7 @@ struct _virDomainCapsDeviceDisk {
typedef struct _virDomainCapsDeviceHostdev virDomainCapsDeviceHostdev;
typedef virDomainCapsDeviceHostdev *virDomainCapsDeviceHostdevPtr;
struct _virDomainCapsDeviceHostdev {
- virDomainCapsDevice device;
+ bool supported;
virDomainCapsEnum mode; /* Info about virDomainHostdevMode */
virDomainCapsEnum startupPolicy; /* Info about virDomainStartupPolicy */
virDomainCapsEnum subsysType; /* Info about virDomainHostdevSubsysType */
diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index b223837..4b1e750 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -3909,7 +3909,7 @@ virQEMUCapsFillDomainLoaderCaps(virQEMUCapsPtr qemuCaps,
{
size_t i;
- capsLoader->device.supported = true;
+ capsLoader->supported = true;
if (VIR_ALLOC_N(capsLoader->values.values, nloader) < 0)
return -1;
@@ -3951,7 +3951,7 @@ virQEMUCapsFillDomainOSCaps(virQEMUCapsPtr qemuCaps,
{
virDomainCapsLoaderPtr capsLoader = &os->loader;
- os->device.supported = true;
+ os->supported = true;
if (virQEMUCapsFillDomainLoaderCaps(qemuCaps, capsLoader,
loader, nloader) < 0)
return -1;
@@ -3964,7 +3964,7 @@ virQEMUCapsFillDomainDeviceDiskCaps(virQEMUCapsPtr qemuCaps,
const char *machine,
virDomainCapsDeviceDiskPtr disk)
{
- disk->device.supported = true;
+ disk->supported = true;
/* QEMU supports all of these */
VIR_DOMAIN_CAPS_ENUM_SET(disk->diskDevice,
VIR_DOMAIN_DISK_DEVICE_DISK,
@@ -4000,7 +4000,7 @@ virQEMUCapsFillDomainDeviceHostdevCaps(virQEMUCapsPtr qemuCaps,
bool supportsPassthroughKVM = qemuHostdevHostSupportsPassthroughLegacy();
bool supportsPassthroughVFIO = qemuHostdevHostSupportsPassthroughVFIO();
- hostdev->device.supported = true;
+ hostdev->supported = true;
/* VIR_DOMAIN_HOSTDEV_MODE_CAPABILITIES is for containers only */
VIR_DOMAIN_CAPS_ENUM_SET(hostdev->mode,
VIR_DOMAIN_HOSTDEV_MODE_SUBSYS);
diff --git a/tests/domaincapstest.c b/tests/domaincapstest.c
index ecefdb9..b6f6ac8 100644
--- a/tests/domaincapstest.c
+++ b/tests/domaincapstest.c
@@ -65,9 +65,9 @@ fillAll(virDomainCapsPtr domCaps,
virDomainCapsDeviceHostdevPtr hostdev = &domCaps->hostdev;
domCaps->maxvcpus = 255;
- os->device.supported = true;
+ os->supported = true;
- loader->device.supported = true;
+ loader->supported = true;
SET_ALL_BITS(loader->type);
SET_ALL_BITS(loader->readonly);
if (fillStringValues(&loader->values,
@@ -76,11 +76,11 @@ fillAll(virDomainCapsPtr domCaps,
NULL) < 0)
return -1;
- disk->device.supported = true;
+ disk->supported = true;
SET_ALL_BITS(disk->diskDevice);
SET_ALL_BITS(disk->bus);
- hostdev->device.supported = true;
+ hostdev->supported = true;
SET_ALL_BITS(hostdev->mode);
SET_ALL_BITS(hostdev->startupPolicy);
SET_ALL_BITS(hostdev->subsysType);