int
cpuDecode(virCPUDefPtr cpu,
- const union cpuData *data,
+ const virCPUDataPtr data,
const char **models,
unsigned int nmodels,
const char *preferred)
int
cpuEncode(virArch arch,
const virCPUDefPtr cpu,
- union cpuData **forced,
- union cpuData **required,
- union cpuData **optional,
- union cpuData **disabled,
- union cpuData **forbidden,
- union cpuData **vendor)
+ virCPUDataPtr *forced,
+ virCPUDataPtr *required,
+ virCPUDataPtr *optional,
+ virCPUDataPtr *disabled,
+ virCPUDataPtr *forbidden,
+ virCPUDataPtr *vendor)
{
struct cpuArchDriver *driver;
void
cpuDataFree(virArch arch,
- union cpuData *data)
+ virCPUDataPtr data)
{
struct cpuArchDriver *driver;
}
-union cpuData *
+virCPUDataPtr
cpuNodeData(virArch arch)
{
struct cpuArchDriver *driver;
virCPUCompareResult
cpuGuestData(virCPUDefPtr host,
virCPUDefPtr guest,
- union cpuData **data,
+ virCPUDataPtr *data,
char **msg)
{
struct cpuArchDriver *driver;
int
cpuHasFeature(virArch arch,
- const union cpuData *data,
+ const virCPUDataPtr data,
const char *feature)
{
struct cpuArchDriver *driver;
# include "cpu_ppc_data.h"
-union cpuData {
+typedef union _virCPUData virCPUData;
+typedef virCPUData *virCPUDataPtr;
+union _virCPUData {
struct cpuX86Data *x86;
- /* generic driver needs no data */
- /* PowerPC driver need data*/
struct cpuPPCData ppc;
+ /* generic driver needs no data */
};
typedef int
(*cpuArchDecode) (virCPUDefPtr cpu,
- const union cpuData *data,
+ const virCPUDataPtr data,
const char **models,
unsigned int nmodels,
const char *preferred);
typedef int
(*cpuArchEncode) (const virCPUDefPtr cpu,
- union cpuData **forced,
- union cpuData **required,
- union cpuData **optional,
- union cpuData **disabled,
- union cpuData **forbidden,
- union cpuData **vendor);
+ virCPUDataPtr *forced,
+ virCPUDataPtr *required,
+ virCPUDataPtr *optional,
+ virCPUDataPtr *disabled,
+ virCPUDataPtr *forbidden,
+ virCPUDataPtr *vendor);
typedef void
-(*cpuArchDataFree) (union cpuData *data);
+(*cpuArchDataFree) (virCPUDataPtr data);
-typedef union cpuData *
+typedef virCPUDataPtr
(*cpuArchNodeData) (void);
typedef virCPUCompareResult
(*cpuArchGuestData) (virCPUDefPtr host,
virCPUDefPtr guest,
- union cpuData **data,
+ virCPUDataPtr *data,
char **message);
typedef virCPUDefPtr
const virCPUDefPtr host);
typedef int
-(*cpuArchHasFeature) (const union cpuData *data,
+(*cpuArchHasFeature) (const virCPUDataPtr data,
const char *feature);
extern int
cpuDecode (virCPUDefPtr cpu,
- const union cpuData *data,
+ const virCPUDataPtr data,
const char **models,
unsigned int nmodels,
const char *preferred);
extern int
cpuEncode (virArch arch,
const virCPUDefPtr cpu,
- union cpuData **forced,
- union cpuData **required,
- union cpuData **optional,
- union cpuData **disabled,
- union cpuData **forbidden,
- union cpuData **vendor);
+ virCPUDataPtr *forced,
+ virCPUDataPtr *required,
+ virCPUDataPtr *optional,
+ virCPUDataPtr *disabled,
+ virCPUDataPtr *forbidden,
+ virCPUDataPtr *vendor);
extern void
cpuDataFree (virArch arch,
- union cpuData *data);
+ virCPUDataPtr data);
-extern union cpuData *
+extern virCPUDataPtr
cpuNodeData (virArch arch);
extern virCPUCompareResult
cpuGuestData(virCPUDefPtr host,
virCPUDefPtr guest,
- union cpuData **data,
+ virCPUDataPtr *data,
char **msg);
extern char *
extern int
cpuHasFeature(virArch arch,
- const union cpuData *data,
+ const virCPUDataPtr data,
const char *feature);
static const virArch archs[] = { VIR_ARCH_ARMV7L };
-static union cpuData *
+static virCPUDataPtr
ArmNodeData(void)
{
- union cpuData *data;
+ virCPUDataPtr data;
ignore_value(VIR_ALLOC(data));
return data;
static int
ArmDecode(virCPUDefPtr cpu ATTRIBUTE_UNUSED,
- const union cpuData *data ATTRIBUTE_UNUSED,
+ const virCPUDataPtr data ATTRIBUTE_UNUSED,
const char **models ATTRIBUTE_UNUSED,
unsigned int nmodels ATTRIBUTE_UNUSED,
const char *preferred ATTRIBUTE_UNUSED)
}
static void
-ArmDataFree(union cpuData *data)
+ArmDataFree(virCPUDataPtr data)
{
VIR_FREE(data);
}
static int
ppcDecode(virCPUDefPtr cpu,
- const union cpuData *data,
+ const virCPUDataPtr data,
const char **models,
unsigned int nmodels,
const char *preferred ATTRIBUTE_UNUSED)
static void
-ppcDataFree(union cpuData *data)
+ppcDataFree(virCPUDataPtr data)
{
if (data == NULL)
return;
}
#if defined(__powerpc__) || defined(__powerpc64__)
-static union cpuData *
+static virCPUDataPtr
ppcNodeData(void)
{
- union cpuData *data;
+ virCPUDataPtr data;
if (VIR_ALLOC(data) < 0)
return NULL;
static const virArch archs[] = { VIR_ARCH_S390, VIR_ARCH_S390X };
-static union cpuData *
+static virCPUDataPtr
s390NodeData(void)
{
- union cpuData *data;
+ virCPUDataPtr data;
if (VIR_ALLOC(data) < 0)
return NULL;
static int
s390Decode(virCPUDefPtr cpu ATTRIBUTE_UNUSED,
- const union cpuData *data ATTRIBUTE_UNUSED,
+ const virCPUDataPtr data ATTRIBUTE_UNUSED,
const char **models ATTRIBUTE_UNUSED,
unsigned int nmodels ATTRIBUTE_UNUSED,
const char *preferred ATTRIBUTE_UNUSED)
}
static void
-s390DataFree(union cpuData *data)
+s390DataFree(virCPUDataPtr data)
{
VIR_FREE(data);
}
}
-static union cpuData *
+static virCPUDataPtr
x86MakeCPUData(struct cpuX86Data **data)
{
- union cpuData *cpuData;
+ virCPUDataPtr cpuData;
if (VIR_ALLOC(cpuData) < 0)
return NULL;
}
static void
-x86FreeCPUData(union cpuData *data)
+x86FreeCPUData(virCPUDataPtr data)
{
if (!data)
return;
static virCPUCompareResult
x86Compute(virCPUDefPtr host,
virCPUDefPtr cpu,
- union cpuData **guest,
+ virCPUDataPtr *guest,
char **message)
{
struct x86_map *map = NULL;
static virCPUCompareResult
x86GuestData(virCPUDefPtr host,
virCPUDefPtr guest,
- union cpuData **data,
+ virCPUDataPtr *data,
char **message)
{
return x86Compute(host, guest, data, message);
static int
x86DecodeCPUData(virCPUDefPtr cpu,
- const union cpuData *data,
+ const virCPUDataPtr data,
const char **models,
unsigned int nmodels,
const char *preferred)
static int
x86Encode(const virCPUDefPtr cpu,
- union cpuData **forced,
- union cpuData **required,
- union cpuData **optional,
- union cpuData **disabled,
- union cpuData **forbidden,
- union cpuData **vendor)
+ virCPUDataPtr *forced,
+ virCPUDataPtr *required,
+ virCPUDataPtr *optional,
+ virCPUDataPtr *disabled,
+ virCPUDataPtr *forbidden,
+ virCPUDataPtr *vendor)
{
struct x86_map *map = NULL;
struct cpuX86Data *data_forced = NULL;
}
-static union cpuData *
+static virCPUDataPtr
x86NodeData(void)
{
- union cpuData *cpuData = NULL;
+ virCPUDataPtr cpuData = NULL;
struct cpuX86Data *data;
int ret;
return -1;
}
-static int x86HasFeature(const union cpuData *data,
+static int x86HasFeature(const virCPUDataPtr data,
const char *name)
{
struct x86_map *map;
virArch arch)
{
virCPUDefPtr cpu = NULL;
- union cpuData *data = NULL;
+ virCPUDataPtr data = NULL;
virNodeInfo nodeinfo;
int ret = -1;
size_t ncpus = 0;
char **cpus = NULL;
const char *default_model;
- union cpuData *data = NULL;
+ virCPUDataPtr data = NULL;
bool have_cpu = false;
char *compare_msg = NULL;
int ret = -1;
if (dom->os.arch == VIR_ARCH_X86_64) {
bool is_32bit = false;
if (cpu) {
- union cpuData *cpuData = NULL;
+ virCPUDataPtr cpuData = NULL;
if (cpuEncode(VIR_ARCH_X86_64, cpu, NULL, &cpuData,
NULL, NULL, NULL, NULL) < 0)
virCapsPtr caps = NULL;
virCapsGuestPtr guest = NULL;
virCPUDefPtr cpu = NULL;
- union cpuData *data = NULL;
+ virCPUDataPtr data = NULL;
if ((caps = virCapabilitiesNew(virArchFromHost(),
0, 0)) == NULL)
virCPUDefPtr host = NULL;
virCPUDefPtr cpu = NULL;
virCPUDefPtr guest = NULL;
- union cpuData *guestData = NULL;
+ virCPUDataPtr guestData = NULL;
virCPUCompareResult cmpResult;
virBuffer buf = VIR_BUFFER_INITIALIZER;
char *result = NULL;
const struct data *data = arg;
int ret = -1;
virCPUDefPtr host = NULL;
- union cpuData *hostData = NULL;
+ virCPUDataPtr hostData = NULL;
int result;
if (!(host = cpuTestLoadXML(data->arch, data->host)))