qemu: Rename qemud\?CmdFlags to qemuCaps

The new name complies more with the fact that it contains a set of
qemuCapsFlags.
This commit is contained in:
Jiri Denemark 2011-02-08 15:28:53 +01:00
parent a96d08dc53
commit 23d935bd97
9 changed files with 351 additions and 351 deletions

View File

@ -377,7 +377,7 @@ error:
int
qemuCapsProbeCPUModels(const char *qemu,
unsigned long long qemuCmdFlags,
unsigned long long qemuCaps,
const char *arch,
unsigned int *count,
const char ***cpus)
@ -400,7 +400,7 @@ qemuCapsProbeCPUModels(const char *qemu,
}
cmd = virCommandNewArgList(qemu, "-cpu", "?", NULL);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_NODEFCONFIG))
if (qemuCapsGet(qemuCaps, QEMU_CAPS_NODEFCONFIG))
virCommandAddArg(cmd, "-nodefconfig");
virCommandAddEnvPassCommon(cmd);
virCommandSetOutputBuffer(cmd, &output);
@ -442,7 +442,7 @@ qemuCapsInitGuest(virCapsPtr caps,
int nmachines = 0;
struct stat st;
unsigned int ncpus;
unsigned long long qemuCmdFlags;
unsigned long long qemuCaps;
int ret = -1;
/* Check for existance of base emulator, or alternate base
@ -558,8 +558,8 @@ qemuCapsInitGuest(virCapsPtr caps,
!virCapabilitiesAddGuestFeature(guest, "cpuselection", 1, 0))
goto error;
if (qemuCapsExtractVersionInfo(binary, info->arch, NULL, &qemuCmdFlags) < 0 ||
(qemuCapsGet(qemuCmdFlags, QEMU_CAPS_BOOTINDEX) &&
if (qemuCapsExtractVersionInfo(binary, info->arch, NULL, &qemuCaps) < 0 ||
(qemuCapsGet(qemuCaps, QEMU_CAPS_BOOTINDEX) &&
!virCapabilitiesAddGuestFeature(guest, "deviceboot", 1, 0)))
goto error;

View File

@ -111,7 +111,7 @@ int qemuCapsProbeMachineTypes(const char *binary,
int *nmachines);
int qemuCapsProbeCPUModels(const char *qemu,
unsigned long long qemuCmdFlags,
unsigned long long qemuCaps,
const char *arch,
unsigned int *count,
const char ***cpus);
@ -120,16 +120,16 @@ int qemuCapsExtractVersion(virCapsPtr caps,
unsigned int *version);
int qemuCapsExtractVersionInfo(const char *qemu, const char *arch,
unsigned int *version,
unsigned long long *qemuCmdFlags);
unsigned long long *qemuCaps);
int qemuCapsParseHelpStr(const char *qemu,
const char *str,
unsigned long long *qemuCmdFlags,
unsigned long long *qemuCaps,
unsigned int *version,
unsigned int *is_kvm,
unsigned int *kvm_version);
int qemuCapsParseDeviceStr(const char *str,
unsigned long long *qemuCmdFlags);
unsigned long long *qemuCaps);
#endif /* __QEMU_CAPABILITIES_H__*/

File diff suppressed because it is too large Load Diff

View File

@ -46,7 +46,7 @@ virCommandPtr qemuBuildCommandLine(virConnectPtr conn,
virDomainDefPtr def,
virDomainChrSourceDefPtr monitor_chr,
bool monitor_json,
unsigned long long qemuCmdFlags,
unsigned long long qemuCaps,
const char *migrateFrom,
int migrateFd,
virDomainSnapshotObjPtr current_snapshot,
@ -68,44 +68,44 @@ char * qemuBuildNicStr(virDomainNetDefPtr net,
/* Current, best practice */
char * qemuBuildNicDevStr(virDomainNetDefPtr net,
int vlan,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
char *qemuDeviceDriveHostAlias(virDomainDiskDefPtr disk,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
/* Both legacy & current support */
char *qemuBuildDriveStr(virDomainDiskDefPtr disk,
int bootable,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
char *qemuBuildFSStr(virDomainFSDefPtr fs,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
/* Current, best practice */
char * qemuBuildDriveDevStr(virDomainDiskDefPtr disk,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
char * qemuBuildFSDevStr(virDomainFSDefPtr fs,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
/* Current, best practice */
char * qemuBuildControllerDevStr(virDomainControllerDefPtr def,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
char * qemuBuildWatchdogDevStr(virDomainWatchdogDefPtr dev,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
char * qemuBuildMemballoonDevStr(virDomainMemballoonDefPtr dev,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
char * qemuBuildUSBInputDevStr(virDomainInputDefPtr dev);
char * qemuBuildSoundDevStr(virDomainSoundDefPtr sound,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
/* Legacy, pre device support */
char * qemuBuildPCIHostdevPCIDevStr(virDomainHostdevDefPtr dev);
/* Current, best practice */
char * qemuBuildPCIHostdevDevStr(virDomainHostdevDefPtr dev,
const char *configfd,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuOpenPCIConfig(virDomainHostdevDefPtr dev);
@ -125,7 +125,7 @@ int qemuNetworkIfaceConnect(virConnectPtr conn,
int qemuPhysIfaceConnect(virConnectPtr conn,
struct qemud_driver *driver,
virDomainNetDefPtr net,
unsigned long long qemuCmdFlags,
unsigned long long qemuCaps,
const unsigned char *vmuuid,
enum virVMOperationType vmop);
@ -156,7 +156,7 @@ int qemuAssignDevicePCISlots(virDomainDefPtr def, qemuDomainPCIAddressSetPtr ad
int qemuDomainNetVLAN(virDomainNetDefPtr def);
int qemuAssignDeviceNetAlias(virDomainDefPtr def, virDomainNetDefPtr net, int idx);
int qemuAssignDeviceDiskAlias(virDomainDiskDefPtr def, unsigned long long qemuCmdFlags);
int qemuAssignDeviceDiskAlias(virDomainDiskDefPtr def, unsigned long long qemuCaps);
int qemuAssignDeviceHostdevAlias(virDomainDefPtr def, virDomainHostdevDefPtr net, int idx);
int qemuAssignDeviceControllerAlias(virDomainControllerDefPtr controller);

View File

@ -3538,7 +3538,7 @@ static char *qemuDomainXMLToNative(virConnectPtr conn,
struct qemud_driver *driver = conn->privateData;
virDomainDefPtr def = NULL;
virDomainChrSourceDef monConfig;
unsigned long long qemuCmdFlags;
unsigned long long qemuCaps;
virCommandPtr cmd = NULL;
char *ret = NULL;
int i;
@ -3595,14 +3595,14 @@ static char *qemuDomainXMLToNative(virConnectPtr conn,
if (qemuCapsExtractVersionInfo(def->emulator, def->os.arch,
NULL,
&qemuCmdFlags) < 0)
&qemuCaps) < 0)
goto cleanup;
if (qemuProcessPrepareMonitorChr(driver, &monConfig, def->name) < 0)
goto cleanup;
if (!(cmd = qemuBuildCommandLine(conn, driver, def,
&monConfig, false, qemuCmdFlags,
&monConfig, false, qemuCaps,
NULL, -1, NULL, VIR_VM_OP_NO_OP)))
goto cleanup;
@ -3947,7 +3947,7 @@ static int qemudDomainAttachDevice(virDomainPtr dom,
struct qemud_driver *driver = dom->conn->privateData;
virDomainObjPtr vm;
virDomainDeviceDefPtr dev = NULL;
unsigned long long qemuCmdFlags;
unsigned long long qemuCaps;
virCgroupPtr cgroup = NULL;
int ret = -1;
@ -3977,7 +3977,7 @@ static int qemudDomainAttachDevice(virDomainPtr dom,
if (qemuCapsExtractVersionInfo(vm->def->emulator, vm->def->os.arch,
NULL,
&qemuCmdFlags) < 0)
&qemuCaps) < 0)
goto endjob;
if (dev->type == VIR_DOMAIN_DEVICE_DISK) {
@ -3997,7 +3997,7 @@ static int qemudDomainAttachDevice(virDomainPtr dom,
case VIR_DOMAIN_DISK_DEVICE_FLOPPY:
ret = qemuDomainChangeEjectableMedia(driver, vm,
dev->data.disk,
qemuCmdFlags,
qemuCaps,
false);
if (ret == 0)
dev->data.disk = NULL;
@ -4006,17 +4006,17 @@ static int qemudDomainAttachDevice(virDomainPtr dom,
case VIR_DOMAIN_DISK_DEVICE_DISK:
if (dev->data.disk->bus == VIR_DOMAIN_DISK_BUS_USB) {
ret = qemuDomainAttachUsbMassstorageDevice(driver, vm,
dev->data.disk, qemuCmdFlags);
dev->data.disk, qemuCaps);
if (ret == 0)
dev->data.disk = NULL;
} else if (dev->data.disk->bus == VIR_DOMAIN_DISK_BUS_VIRTIO) {
ret = qemuDomainAttachPciDiskDevice(driver, vm,
dev->data.disk, qemuCmdFlags);
dev->data.disk, qemuCaps);
if (ret == 0)
dev->data.disk = NULL;
} else if (dev->data.disk->bus == VIR_DOMAIN_DISK_BUS_SCSI) {
ret = qemuDomainAttachSCSIDisk(driver, vm,
dev->data.disk, qemuCmdFlags);
dev->data.disk, qemuCaps);
if (ret == 0)
dev->data.disk = NULL;
} else {
@ -4041,7 +4041,7 @@ static int qemudDomainAttachDevice(virDomainPtr dom,
} else if (dev->type == VIR_DOMAIN_DEVICE_CONTROLLER) {
if (dev->data.controller->type == VIR_DOMAIN_CONTROLLER_TYPE_SCSI) {
ret = qemuDomainAttachPciControllerDevice(driver, vm,
dev->data.controller, qemuCmdFlags);
dev->data.controller, qemuCaps);
if (ret == 0)
dev->data.controller = NULL;
} else {
@ -4052,12 +4052,12 @@ static int qemudDomainAttachDevice(virDomainPtr dom,
}
} else if (dev->type == VIR_DOMAIN_DEVICE_NET) {
ret = qemuDomainAttachNetDevice(dom->conn, driver, vm,
dev->data.net, qemuCmdFlags);
dev->data.net, qemuCaps);
if (ret == 0)
dev->data.net = NULL;
} else if (dev->type == VIR_DOMAIN_DEVICE_HOSTDEV) {
ret = qemuDomainAttachHostDevice(driver, vm,
dev->data.hostdev, qemuCmdFlags);
dev->data.hostdev, qemuCaps);
if (ret == 0)
dev->data.hostdev = NULL;
} else {
@ -4105,7 +4105,7 @@ static int qemuDomainUpdateDeviceFlags(virDomainPtr dom,
struct qemud_driver *driver = dom->conn->privateData;
virDomainObjPtr vm;
virDomainDeviceDefPtr dev = NULL;
unsigned long long qemuCmdFlags;
unsigned long long qemuCaps;
virCgroupPtr cgroup = NULL;
int ret = -1;
bool force = (flags & VIR_DOMAIN_DEVICE_MODIFY_FORCE) != 0;
@ -4147,7 +4147,7 @@ static int qemuDomainUpdateDeviceFlags(virDomainPtr dom,
if (qemuCapsExtractVersionInfo(vm->def->emulator, vm->def->os.arch,
NULL,
&qemuCmdFlags) < 0)
&qemuCaps) < 0)
goto endjob;
switch (dev->type) {
@ -4168,7 +4168,7 @@ static int qemuDomainUpdateDeviceFlags(virDomainPtr dom,
case VIR_DOMAIN_DISK_DEVICE_FLOPPY:
ret = qemuDomainChangeEjectableMedia(driver, vm,
dev->data.disk,
qemuCmdFlags,
qemuCaps,
force);
if (ret == 0)
dev->data.disk = NULL;
@ -4223,7 +4223,7 @@ static int qemudDomainDetachDevice(virDomainPtr dom,
const char *xml) {
struct qemud_driver *driver = dom->conn->privateData;
virDomainObjPtr vm;
unsigned long long qemuCmdFlags;
unsigned long long qemuCaps;
virDomainDeviceDefPtr dev = NULL;
int ret = -1;
@ -4253,28 +4253,28 @@ static int qemudDomainDetachDevice(virDomainPtr dom,
if (qemuCapsExtractVersionInfo(vm->def->emulator, vm->def->os.arch,
NULL,
&qemuCmdFlags) < 0)
&qemuCaps) < 0)
goto endjob;
if (dev->type == VIR_DOMAIN_DEVICE_DISK &&
dev->data.disk->device == VIR_DOMAIN_DISK_DEVICE_DISK) {
if (dev->data.disk->bus == VIR_DOMAIN_DISK_BUS_VIRTIO) {
ret = qemuDomainDetachPciDiskDevice(driver, vm, dev, qemuCmdFlags);
ret = qemuDomainDetachPciDiskDevice(driver, vm, dev, qemuCaps);
}
else if (dev->data.disk->bus == VIR_DOMAIN_DISK_BUS_SCSI) {
ret = qemuDomainDetachSCSIDiskDevice(driver, vm, dev,
qemuCmdFlags);
qemuCaps);
}
else {
qemuReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
_("This type of disk cannot be hot unplugged"));
}
} else if (dev->type == VIR_DOMAIN_DEVICE_NET) {
ret = qemuDomainDetachNetDevice(driver, vm, dev, qemuCmdFlags);
ret = qemuDomainDetachNetDevice(driver, vm, dev, qemuCaps);
} else if (dev->type == VIR_DOMAIN_DEVICE_CONTROLLER) {
if (dev->data.controller->type == VIR_DOMAIN_CONTROLLER_TYPE_SCSI) {
ret = qemuDomainDetachPciControllerDevice(driver, vm, dev,
qemuCmdFlags);
qemuCaps);
} else {
qemuReportError(VIR_ERR_CONFIG_UNSUPPORTED,
_("disk controller bus '%s' cannot be hotunplugged."),
@ -4282,7 +4282,7 @@ static int qemudDomainDetachDevice(virDomainPtr dom,
/* fallthrough */
}
} else if (dev->type == VIR_DOMAIN_DEVICE_HOSTDEV) {
ret = qemuDomainDetachHostDevice(driver, vm, dev, qemuCmdFlags);
ret = qemuDomainDetachHostDevice(driver, vm, dev, qemuCaps);
} else {
qemuReportError(VIR_ERR_CONFIG_UNSUPPORTED,
"%s", _("This type of device cannot be hot unplugged"));

View File

@ -44,7 +44,7 @@
int qemuDomainChangeEjectableMedia(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDiskDefPtr disk,
unsigned long long qemuCmdFlags,
unsigned long long qemuCaps,
bool force)
{
virDomainDiskDefPtr origdisk = NULL;
@ -87,7 +87,7 @@ int qemuDomainChangeEjectableMedia(struct qemud_driver *driver,
vm, disk) < 0)
return -1;
if (!(driveAlias = qemuDeviceDriveHostAlias(origdisk, qemuCmdFlags)))
if (!(driveAlias = qemuDeviceDriveHostAlias(origdisk, qemuCaps)))
goto error;
qemuDomainObjPrivatePtr priv = vm->privateData;
@ -140,7 +140,7 @@ error:
int qemuDomainAttachPciDiskDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDiskDefPtr disk,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
int i, ret;
const char* type = virDomainDiskBusTypeToString(disk->bus);
@ -160,16 +160,16 @@ int qemuDomainAttachPciDiskDevice(struct qemud_driver *driver,
vm, disk) < 0)
return -1;
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuDomainPCIAddressEnsureAddr(priv->pciaddrs, &disk->info) < 0)
goto error;
if (qemuAssignDeviceDiskAlias(disk, qemuCmdFlags) < 0)
if (qemuAssignDeviceDiskAlias(disk, qemuCaps) < 0)
goto error;
if (!(drivestr = qemuBuildDriveStr(disk, 0, qemuCmdFlags)))
if (!(drivestr = qemuBuildDriveStr(disk, 0, qemuCaps)))
goto error;
if (!(devstr = qemuBuildDriveDevStr(disk, qemuCmdFlags)))
if (!(devstr = qemuBuildDriveDevStr(disk, qemuCaps)))
goto error;
}
@ -179,7 +179,7 @@ int qemuDomainAttachPciDiskDevice(struct qemud_driver *driver,
}
qemuDomainObjEnterMonitorWithDriver(driver, vm);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
ret = qemuMonitorAddDrive(priv->mon, drivestr);
if (ret == 0) {
ret = qemuMonitorAddDevice(priv->mon, devstr);
@ -219,7 +219,7 @@ error:
VIR_FREE(devstr);
VIR_FREE(drivestr);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE) &&
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE) &&
(disk->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI) &&
qemuDomainPCIAddressReleaseAddr(priv->pciaddrs, &disk->info) < 0)
VIR_WARN("Unable to release PCI address on %s", disk->src);
@ -235,7 +235,7 @@ error:
int qemuDomainAttachPciControllerDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainControllerDefPtr controller,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
int i;
int ret = -1;
@ -253,13 +253,13 @@ int qemuDomainAttachPciControllerDevice(struct qemud_driver *driver,
}
}
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuDomainPCIAddressEnsureAddr(priv->pciaddrs, &controller->info) < 0)
goto cleanup;
if (qemuAssignDeviceControllerAlias(controller) < 0)
goto cleanup;
if (!(devstr = qemuBuildControllerDevStr(controller, qemuCmdFlags))) {
if (!(devstr = qemuBuildControllerDevStr(controller, qemuCaps))) {
goto cleanup;
}
}
@ -270,7 +270,7 @@ int qemuDomainAttachPciControllerDevice(struct qemud_driver *driver,
}
qemuDomainObjEnterMonitorWithDriver(driver, vm);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
ret = qemuMonitorAddDevice(priv->mon, devstr);
} else {
ret = qemuMonitorAttachPCIDiskController(priv->mon,
@ -286,7 +286,7 @@ int qemuDomainAttachPciControllerDevice(struct qemud_driver *driver,
cleanup:
if ((ret != 0) &&
qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE) &&
qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE) &&
(controller->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI) &&
qemuDomainPCIAddressReleaseAddr(priv->pciaddrs, &controller->info) < 0)
VIR_WARN0("Unable to release PCI address on controller");
@ -300,7 +300,7 @@ static virDomainControllerDefPtr
qemuDomainFindOrCreateSCSIDiskController(struct qemud_driver *driver,
virDomainObjPtr vm,
int controller,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
int i;
virDomainControllerDefPtr cont;
@ -326,7 +326,7 @@ qemuDomainFindOrCreateSCSIDiskController(struct qemud_driver *driver,
VIR_INFO0("No SCSI controller present, hotplugging one");
if (qemuDomainAttachPciControllerDevice(driver,
vm, cont, qemuCmdFlags) < 0) {
vm, cont, qemuCaps) < 0) {
VIR_FREE(cont);
return NULL;
}
@ -346,7 +346,7 @@ qemuDomainFindOrCreateSCSIDiskController(struct qemud_driver *driver,
int qemuDomainAttachSCSIDisk(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDiskDefPtr disk,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
int i;
qemuDomainObjPrivatePtr priv = vm->privateData;
@ -376,18 +376,18 @@ int qemuDomainAttachSCSIDisk(struct qemud_driver *driver,
goto error;
}
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuAssignDeviceDiskAlias(disk, qemuCmdFlags) < 0)
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuAssignDeviceDiskAlias(disk, qemuCaps) < 0)
goto error;
if (!(devstr = qemuBuildDriveDevStr(disk, qemuCmdFlags)))
if (!(devstr = qemuBuildDriveDevStr(disk, qemuCaps)))
goto error;
}
if (!(drivestr = qemuBuildDriveStr(disk, 0, qemuCmdFlags)))
if (!(drivestr = qemuBuildDriveStr(disk, 0, qemuCaps)))
goto error;
for (i = 0 ; i <= disk->info.addr.drive.controller ; i++) {
cont = qemuDomainFindOrCreateSCSIDiskController(driver, vm, i, qemuCmdFlags);
cont = qemuDomainFindOrCreateSCSIDiskController(driver, vm, i, qemuCaps);
if (!cont)
goto error;
}
@ -409,7 +409,7 @@ int qemuDomainAttachSCSIDisk(struct qemud_driver *driver,
}
qemuDomainObjEnterMonitorWithDriver(driver, vm);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
ret = qemuMonitorAddDrive(priv->mon, drivestr);
if (ret == 0) {
ret = qemuMonitorAddDevice(priv->mon, devstr);
@ -462,7 +462,7 @@ error:
int qemuDomainAttachUsbMassstorageDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDiskDefPtr disk,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
qemuDomainObjPrivatePtr priv = vm->privateData;
int i, ret;
@ -487,12 +487,12 @@ int qemuDomainAttachUsbMassstorageDevice(struct qemud_driver *driver,
goto error;
}
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuAssignDeviceDiskAlias(disk, qemuCmdFlags) < 0)
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuAssignDeviceDiskAlias(disk, qemuCaps) < 0)
goto error;
if (!(drivestr = qemuBuildDriveStr(disk, 0, qemuCmdFlags)))
if (!(drivestr = qemuBuildDriveStr(disk, 0, qemuCaps)))
goto error;
if (!(devstr = qemuBuildDriveDevStr(disk, qemuCmdFlags)))
if (!(devstr = qemuBuildDriveDevStr(disk, qemuCaps)))
goto error;
}
@ -502,7 +502,7 @@ int qemuDomainAttachUsbMassstorageDevice(struct qemud_driver *driver,
}
qemuDomainObjEnterMonitorWithDriver(driver, vm);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
ret = qemuMonitorAddDrive(priv->mon, drivestr);
if (ret == 0) {
ret = qemuMonitorAddDevice(priv->mon, devstr);
@ -547,7 +547,7 @@ int qemuDomainAttachNetDevice(virConnectPtr conn,
struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainNetDefPtr net,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
qemuDomainObjPrivatePtr priv = vm->privateData;
char *tapfd_name = NULL;
@ -558,7 +558,7 @@ int qemuDomainAttachNetDevice(virConnectPtr conn,
virDomainDevicePCIAddress guestAddr;
int vlan;
if (!qemuCapsGet(qemuCmdFlags, QEMU_CAPS_HOST_NET_ADD)) {
if (!qemuCapsGet(qemuCaps, QEMU_CAPS_HOST_NET_ADD)) {
qemuReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
_("installed qemu version does not support host_net_add"));
return -1;
@ -574,7 +574,7 @@ int qemuDomainAttachNetDevice(virConnectPtr conn,
return -1;
}
if ((tapfd = qemuNetworkIfaceConnect(conn, driver, net, qemuCmdFlags)) < 0)
if ((tapfd = qemuNetworkIfaceConnect(conn, driver, net, qemuCaps)) < 0)
return -1;
} else if (net->type == VIR_DOMAIN_NET_TYPE_DIRECT) {
if (priv->monConfig->type != VIR_DOMAIN_CHR_TYPE_UNIX) {
@ -586,7 +586,7 @@ int qemuDomainAttachNetDevice(virConnectPtr conn,
}
if ((tapfd = qemuPhysIfaceConnect(conn, driver, net,
qemuCmdFlags,
qemuCaps,
vm->def->uuid,
VIR_VM_OP_CREATE)) < 0)
return -1;
@ -595,18 +595,18 @@ int qemuDomainAttachNetDevice(virConnectPtr conn,
if (VIR_REALLOC_N(vm->def->nets, vm->def->nnets+1) < 0)
goto no_memory;
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_NET_NAME) ||
qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_NET_NAME) ||
qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuAssignDeviceNetAlias(vm->def, net, -1) < 0)
goto cleanup;
}
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE) &&
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE) &&
qemuDomainPCIAddressEnsureAddr(priv->pciaddrs, &net->info) < 0)
goto cleanup;
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_NETDEV) &&
qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_NETDEV) &&
qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
vlan = -1;
} else {
vlan = qemuDomainNetVLAN(net);
@ -637,8 +637,8 @@ int qemuDomainAttachNetDevice(virConnectPtr conn,
}
/* FIXME - need to support vhost-net here (5th arg) */
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_NETDEV) &&
qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_NETDEV) &&
qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (!(netstr = qemuBuildHostNetStr(net, ',',
-1, tapfd_name, 0)))
goto try_tapfd_close;
@ -649,8 +649,8 @@ int qemuDomainAttachNetDevice(virConnectPtr conn,
}
qemuDomainObjEnterMonitorWithDriver(driver, vm);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_NETDEV) &&
qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_NETDEV) &&
qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuMonitorAddNetdev(priv->mon, netstr) < 0) {
qemuDomainObjExitMonitorWithDriver(driver, vm);
qemuDomainNetAudit(vm, NULL, net, "attach", false);
@ -673,8 +673,8 @@ int qemuDomainAttachNetDevice(virConnectPtr conn,
goto cleanup;
}
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (!(nicstr = qemuBuildNicDevStr(net, vlan, qemuCmdFlags)))
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (!(nicstr = qemuBuildNicDevStr(net, vlan, qemuCaps)))
goto try_remove;
} else {
if (!(nicstr = qemuBuildNicStr(net, NULL, vlan)))
@ -682,7 +682,7 @@ int qemuDomainAttachNetDevice(virConnectPtr conn,
}
qemuDomainObjEnterMonitorWithDriver(driver, vm);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuMonitorAddDevice(priv->mon, nicstr) < 0) {
qemuDomainObjExitMonitorWithDriver(driver, vm);
qemuDomainNetAudit(vm, NULL, net, "attach", false);
@ -708,7 +708,7 @@ int qemuDomainAttachNetDevice(virConnectPtr conn,
cleanup:
if ((ret != 0) &&
qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE) &&
qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE) &&
(net->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI) &&
qemuDomainPCIAddressReleaseAddr(priv->pciaddrs, &net->info) < 0)
VIR_WARN0("Unable to release PCI address on NIC");
@ -728,8 +728,8 @@ try_remove:
goto cleanup;
if (vlan < 0) {
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_NETDEV) &&
qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_NETDEV) &&
qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
char *netdev_name;
if (virAsprintf(&netdev_name, "host%s", net->info.alias) < 0)
goto no_memory;
@ -777,7 +777,7 @@ no_memory:
int qemuDomainAttachHostPciDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainHostdevDefPtr hostdev,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
qemuDomainObjPrivatePtr priv = vm->privateData;
int ret;
@ -793,12 +793,12 @@ int qemuDomainAttachHostPciDevice(struct qemud_driver *driver,
if (qemuPrepareHostdevPCIDevices(driver, &hostdev, 1) < 0)
return -1;
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuAssignDeviceHostdevAlias(vm->def, hostdev, -1) < 0)
goto error;
if (qemuDomainPCIAddressEnsureAddr(priv->pciaddrs, &hostdev->info) < 0)
goto error;
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_PCI_CONFIGFD)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_PCI_CONFIGFD)) {
configfd = qemuOpenPCIConfig(hostdev);
if (configfd >= 0) {
if (virAsprintf(&configfd_name, "fd-%s",
@ -824,7 +824,7 @@ int qemuDomainAttachHostPciDevice(struct qemud_driver *driver,
}
if (!(devstr = qemuBuildPCIHostdevDevStr(hostdev, configfd_name,
qemuCmdFlags)))
qemuCaps)))
goto error;
qemuDomainObjEnterMonitorWithDriver(driver, vm);
@ -854,7 +854,7 @@ int qemuDomainAttachHostPciDevice(struct qemud_driver *driver,
return 0;
error:
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE) &&
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE) &&
(hostdev->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI) &&
qemuDomainPCIAddressReleaseAddr(priv->pciaddrs, &hostdev->info) < 0)
VIR_WARN0("Unable to release PCI address on host device");
@ -872,13 +872,13 @@ error:
int qemuDomainAttachHostUsbDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainHostdevDefPtr hostdev,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
int ret;
qemuDomainObjPrivatePtr priv = vm->privateData;
char *devstr = NULL;
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuAssignDeviceHostdevAlias(vm->def, hostdev, -1) < 0)
goto error;
if (!(devstr = qemuBuildUSBHostdevDevStr(hostdev)))
@ -910,7 +910,7 @@ int qemuDomainAttachHostUsbDevice(struct qemud_driver *driver,
}
qemuDomainObjEnterMonitorWithDriver(driver, vm);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE))
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE))
ret = qemuMonitorAddDevice(priv->mon, devstr);
else
ret = qemuMonitorAddUSBDeviceExact(priv->mon,
@ -935,7 +935,7 @@ error:
int qemuDomainAttachHostDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainHostdevDefPtr hostdev,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
if (hostdev->mode != VIR_DOMAIN_HOSTDEV_MODE_SUBSYS) {
qemuReportError(VIR_ERR_CONFIG_UNSUPPORTED,
@ -968,13 +968,13 @@ int qemuDomainAttachHostDevice(struct qemud_driver *driver,
switch (hostdev->source.subsys.type) {
case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI:
if (qemuDomainAttachHostPciDevice(driver, vm,
hostdev, qemuCmdFlags) < 0)
hostdev, qemuCaps) < 0)
goto error;
break;
case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB:
if (qemuDomainAttachHostUsbDevice(driver, vm,
hostdev, qemuCmdFlags) < 0)
hostdev, qemuCaps) < 0)
goto error;
break;
@ -1130,7 +1130,7 @@ static inline int qemuFindDisk(virDomainDefPtr def, const char *dst)
int qemuDomainDetachPciDiskDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDeviceDefPtr dev,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
int i, ret = -1;
virDomainDiskDefPtr detach = NULL;
@ -1173,7 +1173,7 @@ int qemuDomainDetachPciDiskDevice(struct qemud_driver *driver,
}
qemuDomainObjEnterMonitorWithDriver(driver, vm);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuMonitorDelDevice(priv->mon, detach->info.alias) < 0) {
qemuDomainObjExitMonitor(vm);
goto cleanup;
@ -1193,7 +1193,7 @@ int qemuDomainDetachPciDiskDevice(struct qemud_driver *driver,
qemuDomainDiskAudit(vm, detach, NULL, "detach", ret >= 0);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE) &&
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE) &&
qemuDomainPCIAddressReleaseAddr(priv->pciaddrs, &detach->info) < 0)
VIR_WARN("Unable to release PCI address on %s", dev->data.disk->src);
@ -1221,7 +1221,7 @@ cleanup:
int qemuDomainDetachSCSIDiskDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDeviceDefPtr dev,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
int i, ret = -1;
virDomainDiskDefPtr detach = NULL;
@ -1237,7 +1237,7 @@ int qemuDomainDetachSCSIDiskDevice(struct qemud_driver *driver,
goto cleanup;
}
if (!qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (!qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
qemuReportError(VIR_ERR_OPERATION_FAILED, "%s",
_("Underlying qemu does not support SCSI disk removal"));
goto cleanup;
@ -1350,7 +1350,7 @@ static bool qemuDomainControllerIsBusy(virDomainObjPtr vm,
int qemuDomainDetachPciControllerDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDeviceDefPtr dev,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
int i, ret = -1;
virDomainControllerDefPtr detach = NULL;
@ -1385,13 +1385,13 @@ int qemuDomainDetachPciControllerDevice(struct qemud_driver *driver,
goto cleanup;
}
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuAssignDeviceControllerAlias(detach) < 0)
goto cleanup;
}
qemuDomainObjEnterMonitorWithDriver(driver, vm);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuMonitorDelDevice(priv->mon, detach->info.alias)) {
qemuDomainObjExitMonitor(vm);
goto cleanup;
@ -1419,7 +1419,7 @@ int qemuDomainDetachPciControllerDevice(struct qemud_driver *driver,
vm->def->ncontrollers = 0;
}
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE) &&
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE) &&
qemuDomainPCIAddressReleaseAddr(priv->pciaddrs, &detach->info) < 0)
VIR_WARN0("Unable to release PCI address on controller");
@ -1434,7 +1434,7 @@ cleanup:
int qemuDomainDetachNetDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDeviceDefPtr dev,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
int i, ret = -1;
virDomainNetDefPtr detach = NULL;
@ -1479,7 +1479,7 @@ int qemuDomainDetachNetDevice(struct qemud_driver *driver,
}
qemuDomainObjEnterMonitorWithDriver(driver, vm);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuMonitorDelDevice(priv->mon, detach->info.alias) < 0) {
qemuDomainObjExitMonitor(vm);
qemuDomainNetAudit(vm, detach, NULL, "detach", false);
@ -1494,8 +1494,8 @@ int qemuDomainDetachNetDevice(struct qemud_driver *driver,
}
}
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_NETDEV) &&
qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_NETDEV) &&
qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuMonitorRemoveNetdev(priv->mon, hostnet_name) < 0) {
qemuDomainObjExitMonitorWithDriver(driver, vm);
qemuDomainNetAudit(vm, detach, NULL, "detach", false);
@ -1512,7 +1512,7 @@ int qemuDomainDetachNetDevice(struct qemud_driver *driver,
qemuDomainNetAudit(vm, detach, NULL, "detach", true);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE) &&
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE) &&
qemuDomainPCIAddressReleaseAddr(priv->pciaddrs, &detach->info) < 0)
VIR_WARN0("Unable to release PCI address on NIC");
@ -1561,7 +1561,7 @@ cleanup:
int qemuDomainDetachHostPciDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDeviceDefPtr dev,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
virDomainHostdevDefPtr detach = NULL;
qemuDomainObjPrivatePtr priv = vm->privateData;
@ -1605,7 +1605,7 @@ int qemuDomainDetachHostPciDevice(struct qemud_driver *driver,
}
qemuDomainObjEnterMonitorWithDriver(driver, vm);
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
if (qemuMonitorDelDevice(priv->mon, detach->info.alias) < 0) {
qemuDomainObjExitMonitor(vm);
return -1;
@ -1636,7 +1636,7 @@ int qemuDomainDetachHostPciDevice(struct qemud_driver *driver,
pciFreeDevice(pci);
}
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE) &&
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE) &&
qemuDomainPCIAddressReleaseAddr(priv->pciaddrs, &detach->info) < 0)
VIR_WARN0("Unable to release PCI address on host device");
@ -1661,7 +1661,7 @@ int qemuDomainDetachHostPciDevice(struct qemud_driver *driver,
int qemuDomainDetachHostUsbDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDeviceDefPtr dev,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
virDomainHostdevDefPtr detach = NULL;
qemuDomainObjPrivatePtr priv = vm->privateData;
@ -1707,7 +1707,7 @@ int qemuDomainDetachHostUsbDevice(struct qemud_driver *driver,
return -1;
}
if (!qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (!qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
qemuReportError(VIR_ERR_OPERATION_FAILED,
"%s", _("device cannot be detached with this QEMU version"));
return -1;
@ -1743,7 +1743,7 @@ int qemuDomainDetachHostUsbDevice(struct qemud_driver *driver,
int qemuDomainDetachHostDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDeviceDefPtr dev,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
virDomainHostdevDefPtr hostdev = dev->data.hostdev;
int ret;
@ -1757,10 +1757,10 @@ int qemuDomainDetachHostDevice(struct qemud_driver *driver,
switch (hostdev->source.subsys.type) {
case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI:
ret = qemuDomainDetachHostPciDevice(driver, vm, dev, qemuCmdFlags);
ret = qemuDomainDetachHostPciDevice(driver, vm, dev, qemuCaps);
break;
case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB:
ret = qemuDomainDetachHostUsbDevice(driver, vm, dev, qemuCmdFlags);
ret = qemuDomainDetachHostUsbDevice(driver, vm, dev, qemuCaps);
break;
default:
qemuReportError(VIR_ERR_CONFIG_UNSUPPORTED,

View File

@ -32,41 +32,41 @@
int qemuDomainChangeEjectableMedia(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDiskDefPtr disk,
unsigned long long qemuCmdFlags,
unsigned long long qemuCaps,
bool force);
int qemuDomainAttachPciDiskDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDiskDefPtr disk,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuDomainAttachPciControllerDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainControllerDefPtr controller,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuDomainAttachSCSIDisk(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDiskDefPtr disk,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuDomainAttachUsbMassstorageDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDiskDefPtr disk,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuDomainAttachNetDevice(virConnectPtr conn,
struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainNetDefPtr net,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuDomainAttachHostPciDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainHostdevDefPtr hostdev,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuDomainAttachHostUsbDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainHostdevDefPtr hostdev,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuDomainAttachHostDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainHostdevDefPtr hostdev,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuDomainChangeGraphics(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainGraphicsDefPtr dev);
@ -78,31 +78,31 @@ int qemuDomainChangeGraphicsPasswords(struct qemud_driver *driver,
int qemuDomainDetachPciDiskDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDeviceDefPtr dev,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuDomainDetachSCSIDiskDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDeviceDefPtr dev,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuDomainDetachPciControllerDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDeviceDefPtr dev,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuDomainDetachNetDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDeviceDefPtr dev,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuDomainDetachHostPciDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDeviceDefPtr dev,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuDomainDetachHostUsbDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDeviceDefPtr dev,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
int qemuDomainDetachHostDevice(struct qemud_driver *driver,
virDomainObjPtr vm,
virDomainDeviceDefPtr dev,
unsigned long long qemuCmdFlags);
unsigned long long qemuCaps);
#endif /* __QEMU_HOTPLUG_H__ */

View File

@ -244,7 +244,7 @@ qemuMigrationPrepareTunnel(struct qemud_driver *driver,
int ret = -1;
int internalret;
char *unixfile = NULL;
unsigned long long qemuCmdFlags;
unsigned long long qemuCaps;
qemuDomainObjPrivatePtr priv = NULL;
struct timeval now;
@ -298,15 +298,15 @@ qemuMigrationPrepareTunnel(struct qemud_driver *driver,
/* check that this qemu version supports the interactive exec */
if (qemuCapsExtractVersionInfo(vm->def->emulator, vm->def->os.arch,
NULL, &qemuCmdFlags) < 0) {
NULL, &qemuCaps) < 0) {
qemuReportError(VIR_ERR_INTERNAL_ERROR,
_("Cannot determine QEMU argv syntax %s"),
vm->def->emulator);
goto endjob;
}
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_MIGRATE_QEMU_UNIX))
if (qemuCapsGet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_UNIX))
internalret = virAsprintf(&migrateFrom, "unix:%s", unixfile);
else if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_MIGRATE_QEMU_EXEC))
else if (qemuCapsGet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_EXEC))
internalret = virAsprintf(&migrateFrom, "exec:nc -U -l %s", unixfile);
else {
qemuReportError(VIR_ERR_OPERATION_FAILED,
@ -708,7 +708,7 @@ static int doTunnelMigrate(struct qemud_driver *driver,
virStreamPtr st = NULL;
char *unixfile = NULL;
int internalret;
unsigned long long qemuCmdFlags;
unsigned long long qemuCaps;
int status;
unsigned long long transferred, remaining, total;
unsigned int background_flags = QEMU_MONITOR_MIGRATE_BACKGROUND;
@ -770,15 +770,15 @@ static int doTunnelMigrate(struct qemud_driver *driver,
/* check that this qemu version supports the unix migration */
if (qemuCapsExtractVersionInfo(vm->def->emulator, vm->def->os.arch,
NULL, &qemuCmdFlags) < 0) {
NULL, &qemuCaps) < 0) {
qemuReportError(VIR_ERR_INTERNAL_ERROR,
_("Cannot extract Qemu version from '%s'"),
vm->def->emulator);
goto cleanup;
}
if (!qemuCapsGet(qemuCmdFlags, QEMU_CAPS_MIGRATE_QEMU_UNIX) &&
!qemuCapsGet(qemuCmdFlags, QEMU_CAPS_MIGRATE_QEMU_EXEC)) {
if (!qemuCapsGet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_UNIX) &&
!qemuCapsGet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_EXEC)) {
qemuReportError(VIR_ERR_OPERATION_FAILED,
"%s", _("Source qemu is too old to support tunnelled migration"));
goto cleanup;
@ -820,11 +820,11 @@ static int doTunnelMigrate(struct qemud_driver *driver,
background_flags |= QEMU_MONITOR_MIGRATE_NON_SHARED_DISK;
if (flags & VIR_MIGRATE_NON_SHARED_INC)
background_flags |= QEMU_MONITOR_MIGRATE_NON_SHARED_INC;
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_MIGRATE_QEMU_UNIX)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_UNIX)) {
internalret = qemuMonitorMigrateToUnix(priv->mon, background_flags,
unixfile);
}
else if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_MIGRATE_QEMU_EXEC)) {
else if (qemuCapsGet(qemuCaps, QEMU_CAPS_MIGRATE_QEMU_EXEC)) {
const char *args[] = { "nc", "-U", unixfile, NULL };
internalret = qemuMonitorMigrateToCommand(priv->mon, QEMU_MONITOR_MIGRATE_BACKGROUND, args);
} else {

View File

@ -1137,7 +1137,7 @@ static int
qemuProcessInitPasswords(virConnectPtr conn,
struct qemud_driver *driver,
virDomainObjPtr vm,
unsigned long long qemuCmdFlags)
unsigned long long qemuCaps)
{
int ret = 0;
qemuDomainObjPrivatePtr priv = vm->privateData;
@ -1159,7 +1159,7 @@ qemuProcessInitPasswords(virConnectPtr conn,
if (ret < 0)
goto cleanup;
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
int i;
for (i = 0 ; i < vm->def->ndisks ; i++) {
@ -1789,7 +1789,7 @@ qemuProcessReconnect(void *payload, const char *name ATTRIBUTE_UNUSED, void *opa
struct qemuProcessReconnectData *data = opaque;
struct qemud_driver *driver = data->driver;
qemuDomainObjPrivatePtr priv;
unsigned long long qemuCmdFlags;
unsigned long long qemuCaps;
virConnectPtr conn = data->conn;
virDomainObjLock(obj);
@ -1815,8 +1815,8 @@ qemuProcessReconnect(void *payload, const char *name ATTRIBUTE_UNUSED, void *opa
* since launch time */
if (qemuCapsExtractVersionInfo(obj->def->emulator, obj->def->os.arch,
NULL,
&qemuCmdFlags) >= 0 &&
qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
&qemuCaps) >= 0 &&
qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
priv->persistentAddrs = 1;
if (!(priv->pciaddrs = qemuDomainPCIAddressSetCreate(obj->def)) ||
@ -1879,7 +1879,7 @@ int qemuProcessStart(virConnectPtr conn,
enum virVMOperationType vmop)
{
int ret;
unsigned long long qemuCmdFlags;
unsigned long long qemuCaps;
off_t pos = -1;
char ebuf[1024];
char *pidfile = NULL;
@ -2010,7 +2010,7 @@ int qemuProcessStart(virConnectPtr conn,
VIR_DEBUG0("Determining emulator version");
if (qemuCapsExtractVersionInfo(vm->def->emulator, vm->def->os.arch,
NULL,
&qemuCmdFlags) < 0)
&qemuCaps) < 0)
goto cleanup;
VIR_DEBUG0("Setting up domain cgroup (if required)");
@ -2027,7 +2027,7 @@ int qemuProcessStart(virConnectPtr conn,
goto cleanup;
#if HAVE_YAJL
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_MONITOR_JSON))
if (qemuCapsGet(qemuCaps, QEMU_CAPS_MONITOR_JSON))
priv->monJSON = 1;
else
#endif
@ -2056,7 +2056,7 @@ int qemuProcessStart(virConnectPtr conn,
* we also need to populate the PCi address set cache for later
* use in hotplug
*/
if (qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
VIR_DEBUG0("Assigning domain PCI addresses");
/* Populate cache with current addresses */
if (priv->pciaddrs) {
@ -2078,7 +2078,7 @@ int qemuProcessStart(virConnectPtr conn,
VIR_DEBUG0("Building emulator command line");
if (!(cmd = qemuBuildCommandLine(conn, driver, vm->def, priv->monConfig,
priv->monJSON != 0, qemuCmdFlags,
priv->monJSON != 0, qemuCaps,
migrateFrom, stdin_fd,
vm->current_snapshot, vmop)))
goto cleanup;
@ -2185,12 +2185,12 @@ int qemuProcessStart(virConnectPtr conn,
goto cleanup;
VIR_DEBUG0("Setting any required VM passwords");
if (qemuProcessInitPasswords(conn, driver, vm, qemuCmdFlags) < 0)
if (qemuProcessInitPasswords(conn, driver, vm, qemuCaps) < 0)
goto cleanup;
/* If we have -device, then addresses are assigned explicitly.
* If not, then we have to detect dynamic ones here */
if (!qemuCapsGet(qemuCmdFlags, QEMU_CAPS_DEVICE)) {
if (!qemuCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
VIR_DEBUG0("Determining domain device PCI addresses");
if (qemuProcessInitPCIAddresses(driver, vm) < 0)
goto cleanup;