qemu: Use VIR_ERR_DEVICE_MISSING for various hotplug messages

Modify OPERATION_FAILED and INTERNAL_ERROR error codes to
use DEVICE_MISSING instead for failures associated with the
inability to find the device. This makes it easier for consumers
to key off the error code rather than the error message.

Signed-off-by: Chen Hanxiao <chenhanxiao@gmail.com>
Reviewed-by: John Ferlan <jferlan@redhat.com>
This commit is contained in:
Chen Hanxiao 2018-01-23 12:24:44 +08:00 committed by John Ferlan
parent bb189c8e8c
commit 126db34a81
2 changed files with 16 additions and 16 deletions

View File

@ -16320,7 +16320,7 @@ virDomainNetFindIdx(virDomainDefPtr def, virDomainNetDefPtr net)
if (matchidx < 0) { if (matchidx < 0) {
if (MACAddrSpecified && PCIAddrSpecified) { if (MACAddrSpecified && PCIAddrSpecified) {
virReportError(VIR_ERR_OPERATION_FAILED, virReportError(VIR_ERR_DEVICE_MISSING,
_("no device matching MAC address %s found on " _("no device matching MAC address %s found on "
"%.4x:%.2x:%.2x.%.1x"), "%.4x:%.2x:%.2x.%.1x"),
virMacAddrFormat(&net->mac, mac), virMacAddrFormat(&net->mac, mac),
@ -16329,18 +16329,18 @@ virDomainNetFindIdx(virDomainDefPtr def, virDomainNetDefPtr net)
net->info.addr.pci.slot, net->info.addr.pci.slot,
net->info.addr.pci.function); net->info.addr.pci.function);
} else if (PCIAddrSpecified) { } else if (PCIAddrSpecified) {
virReportError(VIR_ERR_OPERATION_FAILED, virReportError(VIR_ERR_DEVICE_MISSING,
_("no device found on %.4x:%.2x:%.2x.%.1x"), _("no device found on %.4x:%.2x:%.2x.%.1x"),
net->info.addr.pci.domain, net->info.addr.pci.domain,
net->info.addr.pci.bus, net->info.addr.pci.bus,
net->info.addr.pci.slot, net->info.addr.pci.slot,
net->info.addr.pci.function); net->info.addr.pci.function);
} else if (MACAddrSpecified) { } else if (MACAddrSpecified) {
virReportError(VIR_ERR_OPERATION_FAILED, virReportError(VIR_ERR_DEVICE_MISSING,
_("no device matching MAC address %s found"), _("no device matching MAC address %s found"),
virMacAddrFormat(&net->mac, mac)); virMacAddrFormat(&net->mac, mac));
} else { } else {
virReportError(VIR_ERR_OPERATION_FAILED, "%s", virReportError(VIR_ERR_DEVICE_MISSING, "%s",
_("no matching device found")); _("no matching device found"));
} }
} }

View File

@ -3518,7 +3518,7 @@ qemuDomainChangeGraphics(virQEMUDriverPtr driver,
int ret = -1; int ret = -1;
if (!olddev) { if (!olddev) {
virReportError(VIR_ERR_INTERNAL_ERROR, virReportError(VIR_ERR_DEVICE_MISSING,
_("cannot find existing graphics device to modify of " _("cannot find existing graphics device to modify of "
"type '%s'"), type); "type '%s'"), type);
goto cleanup; goto cleanup;
@ -4813,7 +4813,7 @@ int qemuDomainDetachControllerDevice(virQEMUDriverPtr driver,
if ((idx = virDomainControllerFind(vm->def, if ((idx = virDomainControllerFind(vm->def,
dev->data.controller->type, dev->data.controller->type,
dev->data.controller->idx)) < 0) { dev->data.controller->idx)) < 0) {
virReportError(VIR_ERR_OPERATION_FAILED, virReportError(VIR_ERR_DEVICE_MISSING,
_("controller %s:%d not found"), _("controller %s:%d not found"),
virDomainControllerTypeToString(dev->data.controller->type), virDomainControllerTypeToString(dev->data.controller->type),
dev->data.controller->idx); dev->data.controller->idx);
@ -5042,18 +5042,18 @@ int qemuDomainDetachHostDevice(virQEMUDriverPtr driver,
if (idx < 0) { if (idx < 0) {
switch (subsys->type) { switch (subsys->type) {
case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI: case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI:
virReportError(VIR_ERR_OPERATION_FAILED, virReportError(VIR_ERR_DEVICE_MISSING,
_("host pci device %.4x:%.2x:%.2x.%.1x not found"), _("host pci device %.4x:%.2x:%.2x.%.1x not found"),
pcisrc->addr.domain, pcisrc->addr.bus, pcisrc->addr.domain, pcisrc->addr.bus,
pcisrc->addr.slot, pcisrc->addr.function); pcisrc->addr.slot, pcisrc->addr.function);
break; break;
case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB: case VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB:
if (usbsrc->bus && usbsrc->device) { if (usbsrc->bus && usbsrc->device) {
virReportError(VIR_ERR_OPERATION_FAILED, virReportError(VIR_ERR_DEVICE_MISSING,
_("host usb device %03d.%03d not found"), _("host usb device %03d.%03d not found"),
usbsrc->bus, usbsrc->device); usbsrc->bus, usbsrc->device);
} else { } else {
virReportError(VIR_ERR_OPERATION_FAILED, virReportError(VIR_ERR_DEVICE_MISSING,
_("host usb device vendor=0x%.4x product=0x%.4x not found"), _("host usb device vendor=0x%.4x product=0x%.4x not found"),
usbsrc->vendor, usbsrc->product); usbsrc->vendor, usbsrc->product);
} }
@ -5062,13 +5062,13 @@ int qemuDomainDetachHostDevice(virQEMUDriverPtr driver,
if (scsisrc->protocol == if (scsisrc->protocol ==
VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE_ISCSI) { VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE_ISCSI) {
virDomainHostdevSubsysSCSIiSCSIPtr iscsisrc = &scsisrc->u.iscsi; virDomainHostdevSubsysSCSIiSCSIPtr iscsisrc = &scsisrc->u.iscsi;
virReportError(VIR_ERR_OPERATION_FAILED, virReportError(VIR_ERR_DEVICE_MISSING,
_("host scsi iSCSI path %s not found"), _("host scsi iSCSI path %s not found"),
iscsisrc->src->path); iscsisrc->src->path);
} else { } else {
virDomainHostdevSubsysSCSIHostPtr scsihostsrc = virDomainHostdevSubsysSCSIHostPtr scsihostsrc =
&scsisrc->u.host; &scsisrc->u.host;
virReportError(VIR_ERR_OPERATION_FAILED, virReportError(VIR_ERR_DEVICE_MISSING,
_("host scsi device %s:%u:%u.%llu not found"), _("host scsi device %s:%u:%u.%llu not found"),
scsihostsrc->adapter, scsihostsrc->bus, scsihostsrc->adapter, scsihostsrc->bus,
scsihostsrc->target, scsihostsrc->unit); scsihostsrc->target, scsihostsrc->unit);
@ -5106,7 +5106,7 @@ qemuDomainDetachShmemDevice(virQEMUDriverPtr driver,
qemuDomainObjPrivatePtr priv = vm->privateData; qemuDomainObjPrivatePtr priv = vm->privateData;
if ((idx = virDomainShmemDefFind(vm->def, dev)) < 0) { if ((idx = virDomainShmemDefFind(vm->def, dev)) < 0) {
virReportError(VIR_ERR_OPERATION_INVALID, virReportError(VIR_ERR_DEVICE_MISSING,
_("model '%s' shmem device not present " _("model '%s' shmem device not present "
"in domain configuration"), "in domain configuration"),
virDomainShmemModelTypeToString(dev->model)); virDomainShmemModelTypeToString(dev->model));
@ -5165,7 +5165,7 @@ qemuDomainDetachWatchdog(virQEMUDriverPtr driver,
watchdog->model == dev->model && watchdog->model == dev->model &&
watchdog->action == dev->action && watchdog->action == dev->action &&
virDomainDeviceInfoAddressIsEqual(&dev->info, &watchdog->info))) { virDomainDeviceInfoAddressIsEqual(&dev->info, &watchdog->info))) {
virReportError(VIR_ERR_OPERATION_INVALID, virReportError(VIR_ERR_DEVICE_MISSING,
_("model '%s' watchdog device not present " _("model '%s' watchdog device not present "
"in domain configuration"), "in domain configuration"),
virDomainWatchdogModelTypeToString(watchdog->model)); virDomainWatchdogModelTypeToString(watchdog->model));
@ -5438,7 +5438,7 @@ int qemuDomainDetachChrDevice(virQEMUDriverPtr driver,
char *devstr = NULL; char *devstr = NULL;
if (!(tmpChr = virDomainChrFind(vmdef, chr))) { if (!(tmpChr = virDomainChrFind(vmdef, chr))) {
virReportError(VIR_ERR_OPERATION_INVALID, virReportError(VIR_ERR_DEVICE_MISSING,
_("chr type '%s' device not present " _("chr type '%s' device not present "
"in domain configuration"), "in domain configuration"),
virDomainChrDeviceTypeToString(chr->deviceType)); virDomainChrDeviceTypeToString(chr->deviceType));
@ -5487,7 +5487,7 @@ qemuDomainDetachRNGDevice(virQEMUDriverPtr driver,
int ret = -1; int ret = -1;
if ((idx = virDomainRNGFind(vm->def, rng)) < 0) { if ((idx = virDomainRNGFind(vm->def, rng)) < 0) {
virReportError(VIR_ERR_OPERATION_INVALID, virReportError(VIR_ERR_DEVICE_MISSING,
_("model '%s' RNG device not present " _("model '%s' RNG device not present "
"in domain configuration"), "in domain configuration"),
virDomainRNGBackendTypeToString(rng->model)); virDomainRNGBackendTypeToString(rng->model));
@ -5532,7 +5532,7 @@ qemuDomainDetachMemoryDevice(virQEMUDriverPtr driver,
qemuDomainMemoryDeviceAlignSize(vm->def, memdef); qemuDomainMemoryDeviceAlignSize(vm->def, memdef);
if ((idx = virDomainMemoryFindByDef(vm->def, memdef)) < 0) { if ((idx = virDomainMemoryFindByDef(vm->def, memdef)) < 0) {
virReportError(VIR_ERR_OPERATION_INVALID, virReportError(VIR_ERR_DEVICE_MISSING,
_("model '%s' memory device not present " _("model '%s' memory device not present "
"in the domain configuration"), "in the domain configuration"),
virDomainMemoryModelTypeToString(memdef->model)); virDomainMemoryModelTypeToString(memdef->model));