qdev: Get just property name at error_set_from_qdev_prop_error()

Replace `Property *prop` parameter with `char *name`, to reduce
dependency of getter and setter functions on the Property struct
(which will be changed in following patches).

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Message-Id: <20201211220529.2290218-19-ehabkost@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
master
Eduardo Habkost 2020-12-11 17:05:15 -05:00
parent 43b6ab4c67
commit e68c2cb75a
4 changed files with 12 additions and 12 deletions

View File

@ -354,7 +354,7 @@ static void set_mac(Object *obj, Visitor *v, const char *name, void *opaque,
return;
inval:
error_set_from_qdev_prop_error(errp, EINVAL, obj, prop, str);
error_set_from_qdev_prop_error(errp, EINVAL, obj, name, str);
g_free(str);
}
@ -442,7 +442,7 @@ static void set_netdev(Object *obj, Visitor *v, const char *name,
peers_ptr->queues = queues;
out:
error_set_from_qdev_prop_error(errp, err, obj, prop, str);
error_set_from_qdev_prop_error(errp, err, obj, name, str);
g_free(str);
}
@ -494,7 +494,7 @@ static void set_audiodev(Object *obj, Visitor *v, const char* name,
card->state = state;
out:
error_set_from_qdev_prop_error(errp, err, obj, prop, str);
error_set_from_qdev_prop_error(errp, err, obj, name, str);
g_free(str);
}
@ -792,7 +792,7 @@ static void set_pci_devfn(Object *obj, Visitor *v, const char *name,
return;
invalid:
error_set_from_qdev_prop_error(errp, EINVAL, obj, prop, str);
error_set_from_qdev_prop_error(errp, EINVAL, obj, name, str);
g_free(str);
}
@ -916,7 +916,7 @@ static void set_pci_host_devaddr(Object *obj, Visitor *v, const char *name,
return;
inval:
error_set_from_qdev_prop_error(errp, EINVAL, obj, prop, str);
error_set_from_qdev_prop_error(errp, EINVAL, obj, name, str);
g_free(str);
}
@ -1146,7 +1146,7 @@ static void set_uuid(Object *obj, Visitor *v, const char *name, void *opaque,
if (!strcmp(str, UUID_VALUE_AUTO)) {
qemu_uuid_generate(uuid);
} else if (qemu_uuid_parse(str, uuid) < 0) {
error_set_from_qdev_prop_error(errp, EINVAL, obj, prop, str);
error_set_from_qdev_prop_error(errp, EINVAL, obj, name, str);
}
g_free(str);
}

View File

@ -679,21 +679,21 @@ static Property *qdev_prop_find(DeviceState *dev, const char *name)
}
void error_set_from_qdev_prop_error(Error **errp, int ret, Object *obj,
Property *prop, const char *value)
const char *name, const char *value)
{
switch (ret) {
case -EEXIST:
error_setg(errp, "Property '%s.%s' can't take value '%s', it's in use",
object_get_typename(obj), prop->name, value);
object_get_typename(obj), name, value);
break;
default:
case -EINVAL:
error_setg(errp, QERR_PROPERTY_VALUE_BAD,
object_get_typename(obj), prop->name, value);
object_get_typename(obj), name, value);
break;
case -ENOENT:
error_setg(errp, "Property '%s.%s' can't find value '%s'",
object_get_typename(obj), prop->name, value);
object_get_typename(obj), name, value);
break;
case 0:
break;

View File

@ -2390,7 +2390,7 @@ static void set_css_devid(Object *obj, Visitor *v, const char *name,
num = sscanf(str, "%2x.%1x%n.%4x%n", &cssid, &ssid, &n1, &devid, &n2);
if (num != 3 || (n2 - n1) != 5 || strlen(str) != n2) {
error_set_from_qdev_prop_error(errp, EINVAL, obj, prop, str);
error_set_from_qdev_prop_error(errp, EINVAL, obj, name, str);
goto out;
}
if ((cssid > MAX_CSSID) || (ssid > MAX_SSID)) {

View File

@ -201,7 +201,7 @@ const GlobalProperty *qdev_find_global_prop(Object *obj,
int qdev_prop_check_globals(void);
void qdev_prop_set_globals(DeviceState *dev);
void error_set_from_qdev_prop_error(Error **errp, int ret, Object *obj,
Property *prop, const char *value);
const char *name, const char *value);
/**
* qdev_property_add_static: