aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--accel/kvm/kvm-all.c50
-rw-r--r--block/throttle-groups.c5
-rw-r--r--bootdevice.c4
-rw-r--r--hw/core/qdev-properties.c12
-rw-r--r--hw/ide/qdev.c4
-rw-r--r--hw/mem/nvdimm.c9
-rw-r--r--hw/net/ne2000-isa.c4
-rw-r--r--hw/usb/dev-storage.c4
-rw-r--r--net/net.c8
9 files changed, 44 insertions, 56 deletions
diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
index 375e29fb69..ab1a6ff0ee 100644
--- a/accel/kvm/kvm-all.c
+++ b/accel/kvm/kvm-all.c
@@ -3128,37 +3128,33 @@ static void kvm_set_kernel_irqchip(Object *obj, Visitor *v,
const char *name, void *opaque,
Error **errp)
{
- Error *err = NULL;
KVMState *s = KVM_STATE(obj);
OnOffSplit mode;
- visit_type_OnOffSplit(v, name, &mode, &err);
- if (err) {
- error_propagate(errp, err);
+ if (!visit_type_OnOffSplit(v, name, &mode, errp)) {
return;
- } else {
- switch (mode) {
- case ON_OFF_SPLIT_ON:
- s->kernel_irqchip_allowed = true;
- s->kernel_irqchip_required = true;
- s->kernel_irqchip_split = ON_OFF_AUTO_OFF;
- break;
- case ON_OFF_SPLIT_OFF:
- s->kernel_irqchip_allowed = false;
- s->kernel_irqchip_required = false;
- s->kernel_irqchip_split = ON_OFF_AUTO_OFF;
- break;
- case ON_OFF_SPLIT_SPLIT:
- s->kernel_irqchip_allowed = true;
- s->kernel_irqchip_required = true;
- s->kernel_irqchip_split = ON_OFF_AUTO_ON;
- break;
- default:
- /* The value was checked in visit_type_OnOffSplit() above. If
- * we get here, then something is wrong in QEMU.
- */
- abort();
- }
+ }
+ switch (mode) {
+ case ON_OFF_SPLIT_ON:
+ s->kernel_irqchip_allowed = true;
+ s->kernel_irqchip_required = true;
+ s->kernel_irqchip_split = ON_OFF_AUTO_OFF;
+ break;
+ case ON_OFF_SPLIT_OFF:
+ s->kernel_irqchip_allowed = false;
+ s->kernel_irqchip_required = false;
+ s->kernel_irqchip_split = ON_OFF_AUTO_OFF;
+ break;
+ case ON_OFF_SPLIT_SPLIT:
+ s->kernel_irqchip_allowed = true;
+ s->kernel_irqchip_required = true;
+ s->kernel_irqchip_split = ON_OFF_AUTO_ON;
+ break;
+ default:
+ /* The value was checked in visit_type_OnOffSplit() above. If
+ * we get here, then something is wrong in QEMU.
+ */
+ abort();
}
}
diff --git a/block/throttle-groups.c b/block/throttle-groups.c
index bb242fde1a..e411051160 100644
--- a/block/throttle-groups.c
+++ b/block/throttle-groups.c
@@ -895,8 +895,8 @@ static void throttle_group_set_limits(Object *obj, Visitor *v,
ThrottleLimits *argp;
Error *local_err = NULL;
- if (!visit_type_ThrottleLimits(v, name, &argp, &local_err)) {
- goto ret;
+ if (!visit_type_ThrottleLimits(v, name, &argp, errp)) {
+ return;
}
qemu_mutex_lock(&tg->lock);
throttle_get_config(&tg->ts, &cfg);
@@ -908,7 +908,6 @@ static void throttle_group_set_limits(Object *obj, Visitor *v,
unlock:
qemu_mutex_unlock(&tg->lock);
-ret:
qapi_free_ThrottleLimits(argp);
error_propagate(errp, local_err);
return;
diff --git a/bootdevice.c b/bootdevice.c
index fb09d3c668..769f40c77d 100644
--- a/bootdevice.c
+++ b/bootdevice.c
@@ -297,8 +297,8 @@ static void device_set_bootindex(Object *obj, Visitor *v, const char *name,
int32_t boot_index;
Error *local_err = NULL;
- if (!visit_type_int32(v, name, &boot_index, &local_err)) {
- goto out;
+ if (!visit_type_int32(v, name, &boot_index, errp)) {
+ return;
}
/* check whether bootindex is present in fw_boot_order list */
check_boot_index(boot_index, &local_err);
diff --git a/hw/core/qdev-properties.c b/hw/core/qdev-properties.c
index 3cb6faa12b..4c7a8a05a5 100644
--- a/hw/core/qdev-properties.c
+++ b/hw/core/qdev-properties.c
@@ -761,15 +761,15 @@ static void set_pci_devfn(Object *obj, Visitor *v, const char *name,
if (!visit_type_str(v, name, &str, &local_err)) {
error_free(local_err);
local_err = NULL;
- visit_type_int32(v, name, &value, &local_err);
- if (local_err) {
- error_propagate(errp, local_err);
- } else if (value < -1 || value > 255) {
+ if (!visit_type_int32(v, name, &value, errp)) {
+ return;
+ }
+ if (value < -1 || value > 255) {
error_setg(errp, QERR_INVALID_PARAMETER_VALUE,
name ? name : "null", "pci_devfn");
- } else {
- *ptr = value;
+ return;
}
+ *ptr = value;
return;
}
diff --git a/hw/ide/qdev.c b/hw/ide/qdev.c
index 358f10a92e..ba8b0d7f02 100644
--- a/hw/ide/qdev.c
+++ b/hw/ide/qdev.c
@@ -245,8 +245,8 @@ static void ide_dev_set_bootindex(Object *obj, Visitor *v, const char *name,
int32_t boot_index;
Error *local_err = NULL;
- if (!visit_type_int32(v, name, &boot_index, &local_err)) {
- goto out;
+ if (!visit_type_int32(v, name, &boot_index, errp)) {
+ return;
}
/* check whether bootindex is present in fw_boot_order list */
check_boot_index(boot_index, &local_err);
diff --git a/hw/mem/nvdimm.c b/hw/mem/nvdimm.c
index ec92ffd415..1fa976c56c 100644
--- a/hw/mem/nvdimm.c
+++ b/hw/mem/nvdimm.c
@@ -85,21 +85,18 @@ static void nvdimm_set_uuid(Object *obj, Visitor *v, const char *name,
void *opaque, Error **errp)
{
NVDIMMDevice *nvdimm = NVDIMM(obj);
- Error *local_err = NULL;
char *value;
- if (!visit_type_str(v, name, &value, &local_err)) {
- goto out;
+ if (!visit_type_str(v, name, &value, errp)) {
+ return;
}
if (qemu_uuid_parse(value, &nvdimm->uuid) != 0) {
error_setg(errp, "Property '%s.%s' has invalid value",
object_get_typename(obj), name);
}
- g_free(value);
-out:
- error_propagate(errp, local_err);
+ g_free(value);
}
diff --git a/hw/net/ne2000-isa.c b/hw/net/ne2000-isa.c
index 765bcd1f0b..0594abd93a 100644
--- a/hw/net/ne2000-isa.c
+++ b/hw/net/ne2000-isa.c
@@ -113,8 +113,8 @@ static void isa_ne2000_set_bootindex(Object *obj, Visitor *v,
int32_t boot_index;
Error *local_err = NULL;
- if (!visit_type_int32(v, name, &boot_index, &local_err)) {
- goto out;
+ if (!visit_type_int32(v, name, &boot_index, errp)) {
+ return;
}
/* check whether bootindex is present in fw_boot_order list */
check_boot_index(boot_index, &local_err);
diff --git a/hw/usb/dev-storage.c b/hw/usb/dev-storage.c
index 1c3bd2578c..721665191e 100644
--- a/hw/usb/dev-storage.c
+++ b/hw/usb/dev-storage.c
@@ -736,8 +736,8 @@ static void usb_msd_set_bootindex(Object *obj, Visitor *v, const char *name,
int32_t boot_index;
Error *local_err = NULL;
- if (!visit_type_int32(v, name, &boot_index, &local_err)) {
- goto out;
+ if (!visit_type_int32(v, name, &boot_index, errp)) {
+ return;
}
/* check whether bootindex is present in fw_boot_order list */
check_boot_index(boot_index, &local_err);
diff --git a/net/net.c b/net/net.c
index 94dc546fb2..6fe74c80bb 100644
--- a/net/net.c
+++ b/net/net.c
@@ -1062,7 +1062,6 @@ static int net_client_init(QemuOpts *opts, bool is_netdev, Error **errp)
{
gchar **substrings = NULL;
Netdev *object = NULL;
- Error *err = NULL;
int ret = -1;
Visitor *v = opts_visitor_new(opts);
@@ -1110,16 +1109,13 @@ static int net_client_init(QemuOpts *opts, bool is_netdev, Error **errp)
qemu_opts_set_id(opts, g_strdup_printf("__org.qemu.net%i", idx++));
}
- visit_type_Netdev(v, NULL, &object, &err);
-
- if (!err) {
- ret = net_client_init1(object, is_netdev, &err);
+ if (visit_type_Netdev(v, NULL, &object, errp)) {
+ ret = net_client_init1(object, is_netdev, errp);
}
qapi_free_Netdev(object);
out:
- error_propagate(errp, err);
g_strfreev(substrings);
visit_free(v);
return ret;