mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-25 18:55:26 -06:00
testutilsqemu: Remove infrastructure for fake-caps testing of OSX
All tests using this were refactored to use real capabilities. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Martin Kletzander <mkletzan@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
bfc5955406
commit
252019e087
@ -62,15 +62,6 @@ static const char *const *qemu_machines[VIR_ARCH_LAST] = {
|
|||||||
[VIR_ARCH_S390X] = s390x_machines,
|
[VIR_ARCH_S390X] = s390x_machines,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const char *const *hvf_machines[VIR_ARCH_LAST] = {
|
|
||||||
[VIR_ARCH_I686] = NULL,
|
|
||||||
[VIR_ARCH_X86_64] = x86_64_machines,
|
|
||||||
[VIR_ARCH_AARCH64] = aarch64_machines,
|
|
||||||
[VIR_ARCH_PPC64] = NULL,
|
|
||||||
[VIR_ARCH_RISCV64] = NULL,
|
|
||||||
[VIR_ARCH_S390X] = NULL,
|
|
||||||
};
|
|
||||||
|
|
||||||
static const char *qemu_default_ram_id[VIR_ARCH_LAST] = {
|
static const char *qemu_default_ram_id[VIR_ARCH_LAST] = {
|
||||||
[VIR_ARCH_I686] = "pc.ram",
|
[VIR_ARCH_I686] = "pc.ram",
|
||||||
[VIR_ARCH_X86_64] = "pc.ram",
|
[VIR_ARCH_X86_64] = "pc.ram",
|
||||||
@ -165,8 +156,7 @@ virHostCPUX86GetCPUID(uint32_t leaf,
|
|||||||
|
|
||||||
static int
|
static int
|
||||||
testQemuAddGuest(virCaps *caps,
|
testQemuAddGuest(virCaps *caps,
|
||||||
virArch arch,
|
virArch arch)
|
||||||
testQemuHostOS hostOS)
|
|
||||||
{
|
{
|
||||||
size_t nmachines;
|
size_t nmachines;
|
||||||
virCapsGuestMachine **machines = NULL;
|
virCapsGuestMachine **machines = NULL;
|
||||||
@ -199,31 +189,15 @@ testQemuAddGuest(virCaps *caps,
|
|||||||
virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_QEMU,
|
virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_QEMU,
|
||||||
NULL, NULL, 0, NULL);
|
NULL, NULL, 0, NULL);
|
||||||
|
|
||||||
if (hostOS == HOST_OS_LINUX) {
|
nmachines = g_strv_length((char **)qemu_machines[emu_arch]);
|
||||||
nmachines = g_strv_length((char **)qemu_machines[emu_arch]);
|
machines = virCapabilitiesAllocMachines(qemu_machines[emu_arch],
|
||||||
machines = virCapabilitiesAllocMachines(qemu_machines[emu_arch],
|
nmachines);
|
||||||
nmachines);
|
if (machines == NULL)
|
||||||
if (machines == NULL)
|
goto error;
|
||||||
goto error;
|
|
||||||
|
|
||||||
virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_KVM,
|
virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_KVM,
|
||||||
qemu_emulators[emu_arch],
|
qemu_emulators[emu_arch],
|
||||||
NULL, nmachines, machines);
|
NULL, nmachines, machines);
|
||||||
}
|
|
||||||
|
|
||||||
if (hostOS == HOST_OS_MACOS) {
|
|
||||||
if (hvf_machines[emu_arch] != NULL) {
|
|
||||||
nmachines = g_strv_length((char **)hvf_machines[emu_arch]);
|
|
||||||
machines = virCapabilitiesAllocMachines(hvf_machines[emu_arch],
|
|
||||||
nmachines);
|
|
||||||
if (machines == NULL)
|
|
||||||
goto error;
|
|
||||||
|
|
||||||
virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_HVF,
|
|
||||||
qemu_emulators[emu_arch],
|
|
||||||
NULL, nmachines, machines);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
@ -233,8 +207,8 @@ testQemuAddGuest(virCaps *caps,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static virCaps*
|
virCaps *
|
||||||
testQemuCapsInitImpl(testQemuHostOS hostOS)
|
testQemuCapsInit(void)
|
||||||
{
|
{
|
||||||
virCaps *caps;
|
virCaps *caps;
|
||||||
size_t i;
|
size_t i;
|
||||||
@ -254,7 +228,7 @@ testQemuCapsInitImpl(testQemuHostOS hostOS)
|
|||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
for (i = 0; i < VIR_ARCH_LAST; i++) {
|
for (i = 0; i < VIR_ARCH_LAST; i++) {
|
||||||
if (testQemuAddGuest(caps, i, hostOS) < 0)
|
if (testQemuAddGuest(caps, i) < 0)
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -276,19 +250,6 @@ testQemuCapsInitImpl(testQemuHostOS hostOS)
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
virCaps*
|
|
||||||
testQemuCapsInit(void)
|
|
||||||
{
|
|
||||||
return testQemuCapsInitImpl(HOST_OS_LINUX);
|
|
||||||
}
|
|
||||||
|
|
||||||
virCaps*
|
|
||||||
testQemuCapsInitMacOS(void)
|
|
||||||
{
|
|
||||||
return testQemuCapsInitImpl(HOST_OS_MACOS);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
virCPUDef *
|
virCPUDef *
|
||||||
qemuTestGetCPUDef(qemuTestCPUDef d)
|
qemuTestGetCPUDef(qemuTestCPUDef d)
|
||||||
{
|
{
|
||||||
@ -386,8 +347,7 @@ void qemuTestDriverFree(virQEMUDriver *driver)
|
|||||||
|
|
||||||
static void
|
static void
|
||||||
qemuTestCapsPopulateFakeMachines(virQEMUCaps *caps,
|
qemuTestCapsPopulateFakeMachines(virQEMUCaps *caps,
|
||||||
virArch arch,
|
virArch arch)
|
||||||
testQemuHostOS hostOS)
|
|
||||||
{
|
{
|
||||||
size_t i;
|
size_t i;
|
||||||
const char *defaultRAMid = NULL;
|
const char *defaultRAMid = NULL;
|
||||||
@ -415,41 +375,19 @@ qemuTestCapsPopulateFakeMachines(virQEMUCaps *caps,
|
|||||||
VIR_TRISTATE_BOOL_ABSENT);
|
VIR_TRISTATE_BOOL_ABSENT);
|
||||||
virQEMUCapsSet(caps, QEMU_CAPS_TCG);
|
virQEMUCapsSet(caps, QEMU_CAPS_TCG);
|
||||||
|
|
||||||
if (hostOS == HOST_OS_LINUX) {
|
virQEMUCapsAddMachine(caps,
|
||||||
virQEMUCapsAddMachine(caps,
|
VIR_DOMAIN_VIRT_KVM,
|
||||||
VIR_DOMAIN_VIRT_KVM,
|
qemu_machines[arch][i],
|
||||||
qemu_machines[arch][i],
|
NULL,
|
||||||
NULL,
|
NULL,
|
||||||
NULL,
|
0,
|
||||||
0,
|
false,
|
||||||
false,
|
false,
|
||||||
false,
|
true,
|
||||||
true,
|
defaultRAMid,
|
||||||
defaultRAMid,
|
false,
|
||||||
false,
|
VIR_TRISTATE_BOOL_ABSENT);
|
||||||
VIR_TRISTATE_BOOL_ABSENT);
|
virQEMUCapsSet(caps, QEMU_CAPS_KVM);
|
||||||
virQEMUCapsSet(caps, QEMU_CAPS_KVM);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (hostOS == HOST_OS_MACOS) {
|
|
||||||
if (hvf_machines[arch] != NULL) {
|
|
||||||
for (i = 0; hvf_machines[arch][i] != NULL; i++) {
|
|
||||||
virQEMUCapsAddMachine(caps,
|
|
||||||
VIR_DOMAIN_VIRT_HVF,
|
|
||||||
hvf_machines[arch][i],
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
0,
|
|
||||||
false,
|
|
||||||
false,
|
|
||||||
true,
|
|
||||||
defaultRAMid,
|
|
||||||
false,
|
|
||||||
VIR_TRISTATE_BOOL_ABSENT);
|
|
||||||
virQEMUCapsSet(caps, QEMU_CAPS_HVF);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -468,10 +406,9 @@ qemuTestCapsCacheInsertData(virFileCache *cache,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static int
|
int
|
||||||
qemuTestCapsCacheInsertImpl(virFileCache *cache,
|
qemuTestCapsCacheInsert(virFileCache *cache,
|
||||||
virQEMUCaps *caps,
|
virQEMUCaps *caps)
|
||||||
testQemuHostOS hostOS)
|
|
||||||
{
|
{
|
||||||
size_t i;
|
size_t i;
|
||||||
|
|
||||||
@ -498,7 +435,7 @@ qemuTestCapsCacheInsertImpl(virFileCache *cache,
|
|||||||
/* if we are dealing with fake caps we need to populate machine types */
|
/* if we are dealing with fake caps we need to populate machine types */
|
||||||
if (!virQEMUCapsHasMachines(caps)) {
|
if (!virQEMUCapsHasMachines(caps)) {
|
||||||
copyCaps = effCaps = virQEMUCapsNewCopy(caps);
|
copyCaps = effCaps = virQEMUCapsNewCopy(caps);
|
||||||
qemuTestCapsPopulateFakeMachines(copyCaps, arch, hostOS);
|
qemuTestCapsPopulateFakeMachines(copyCaps, arch);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (qemuTestCapsCacheInsertData(cache, qemu_emulators[arch], effCaps) < 0)
|
if (qemuTestCapsCacheInsertData(cache, qemu_emulators[arch], effCaps) < 0)
|
||||||
@ -516,7 +453,7 @@ qemuTestCapsCacheInsertImpl(virFileCache *cache,
|
|||||||
|
|
||||||
tmp = virQEMUCapsNewCopy(caps);
|
tmp = virQEMUCapsNewCopy(caps);
|
||||||
|
|
||||||
qemuTestCapsPopulateFakeMachines(tmp, i, hostOS);
|
qemuTestCapsPopulateFakeMachines(tmp, i);
|
||||||
|
|
||||||
if (qemuTestCapsCacheInsertData(cache, qemu_emulators[i], tmp) < 0)
|
if (qemuTestCapsCacheInsertData(cache, qemu_emulators[i], tmp) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
@ -526,21 +463,6 @@ qemuTestCapsCacheInsertImpl(virFileCache *cache,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
|
||||||
qemuTestCapsCacheInsert(virFileCache *cache,
|
|
||||||
virQEMUCaps *caps)
|
|
||||||
{
|
|
||||||
return qemuTestCapsCacheInsertImpl(cache, caps, HOST_OS_LINUX);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
qemuTestCapsCacheInsertMacOS(virFileCache *cache,
|
|
||||||
virQEMUCaps *caps)
|
|
||||||
{
|
|
||||||
return qemuTestCapsCacheInsertImpl(cache, caps, HOST_OS_MACOS);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# define STATEDIRTEMPLATE abs_builddir "/qemustatedir-XXXXXX"
|
# define STATEDIRTEMPLATE abs_builddir "/qemustatedir-XXXXXX"
|
||||||
# define CONFIGDIRTEMPLATE abs_builddir "/qemuconfigdir-XXXXXX"
|
# define CONFIGDIRTEMPLATE abs_builddir "/qemuconfigdir-XXXXXX"
|
||||||
|
|
||||||
@ -951,10 +873,6 @@ testQemuInfoSetArgs(struct testQemuInfo *info,
|
|||||||
info->args.capsHostCPUModel = va_arg(argptr, int);
|
info->args.capsHostCPUModel = va_arg(argptr, int);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case ARG_HOST_OS:
|
|
||||||
info->args.hostOS = va_arg(argptr, int);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case ARG_FD_GROUP: {
|
case ARG_FD_GROUP: {
|
||||||
virStorageSourceFDTuple *new = virStorageSourceFDTupleNew();
|
virStorageSourceFDTuple *new = virStorageSourceFDTupleNew();
|
||||||
const char *fdname = va_arg(argptr, char *);
|
const char *fdname = va_arg(argptr, char *);
|
||||||
|
@ -36,11 +36,6 @@ enum {
|
|||||||
GIC_BOTH,
|
GIC_BOTH,
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef enum {
|
|
||||||
HOST_OS_LINUX = 0,
|
|
||||||
HOST_OS_MACOS,
|
|
||||||
} testQemuHostOS;
|
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
ARG_QEMU_CAPS = QEMU_CAPS_LAST + 1,
|
ARG_QEMU_CAPS = QEMU_CAPS_LAST + 1,
|
||||||
ARG_QEMU_CAPS_DEL,
|
ARG_QEMU_CAPS_DEL,
|
||||||
@ -53,7 +48,6 @@ typedef enum {
|
|||||||
ARG_CAPS_VER,
|
ARG_CAPS_VER,
|
||||||
ARG_CAPS_VARIANT,
|
ARG_CAPS_VARIANT,
|
||||||
ARG_CAPS_HOST_CPU_MODEL,
|
ARG_CAPS_HOST_CPU_MODEL,
|
||||||
ARG_HOST_OS,
|
|
||||||
ARG_FD_GROUP, /* name, nfds, fd[0], ... fd[n-1] */
|
ARG_FD_GROUP, /* name, nfds, fd[0], ... fd[n-1] */
|
||||||
ARG_END,
|
ARG_END,
|
||||||
} testQemuInfoArgName;
|
} testQemuInfoArgName;
|
||||||
@ -90,7 +84,6 @@ struct testQemuArgs {
|
|||||||
const char *capsvariant;
|
const char *capsvariant;
|
||||||
qemuTestCPUDef capsHostCPUModel;
|
qemuTestCPUDef capsHostCPUModel;
|
||||||
int gic;
|
int gic;
|
||||||
testQemuHostOS hostOS;
|
|
||||||
GHashTable *fds;
|
GHashTable *fds;
|
||||||
bool invalidarg;
|
bool invalidarg;
|
||||||
};
|
};
|
||||||
@ -113,7 +106,6 @@ struct testQemuInfo {
|
|||||||
};
|
};
|
||||||
|
|
||||||
virCaps *testQemuCapsInit(void);
|
virCaps *testQemuCapsInit(void);
|
||||||
virCaps *testQemuCapsInitMacOS(void);
|
|
||||||
virDomainXMLOption *testQemuXMLConfInit(void);
|
virDomainXMLOption *testQemuXMLConfInit(void);
|
||||||
|
|
||||||
|
|
||||||
@ -131,8 +123,6 @@ int qemuTestDriverInit(virQEMUDriver *driver);
|
|||||||
void qemuTestDriverFree(virQEMUDriver *driver);
|
void qemuTestDriverFree(virQEMUDriver *driver);
|
||||||
int qemuTestCapsCacheInsert(virFileCache *cache,
|
int qemuTestCapsCacheInsert(virFileCache *cache,
|
||||||
virQEMUCaps *caps);
|
virQEMUCaps *caps);
|
||||||
int qemuTestCapsCacheInsertMacOS(virFileCache *cache,
|
|
||||||
virQEMUCaps *caps);
|
|
||||||
|
|
||||||
int testQemuCapsSetGIC(virQEMUCaps *qemuCaps,
|
int testQemuCapsSetGIC(virQEMUCaps *qemuCaps,
|
||||||
int gic);
|
int gic);
|
||||||
|
Loading…
Reference in New Issue
Block a user