Commit 21d16836 authored by Zhang Yi's avatar Zhang Yi Committed by Eduardo Habkost
Browse files

hostmem: add more information in error messages



When there are multiple memory backends in use, including the object type
and property name in the error message can help users to locate the error.

Signed-off-by: default avatarHaozhong Zhang <haozhong.zhang@intel.com>
Signed-off-by: default avatarZhang Yi <yi.z.zhang@linux.intel.com>
Message-Id: <97d9193875747d8378c05b9e3b3cb39c1b7d2b4e.1546399191.git.yi.z.zhang@linux.intel.com>
Reviewed-by: default avatarEduardo Habkost <ehabkost@redhat.com>
[ehabkost: reword commit message]
Signed-off-by: default avatarEduardo Habkost <ehabkost@redhat.com>
parent 2920bd64
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -82,7 +82,8 @@ static void set_mem_path(Object *o, const char *str, Error **errp)
    HostMemoryBackendFile *fb = MEMORY_BACKEND_FILE(o);

    if (host_memory_backend_mr_inited(backend)) {
        error_setg(errp, "cannot change property value");
        error_setg(errp, "cannot change property 'mem-path' of %s",
                   object_get_typename(o));
        return;
    }
    g_free(fb->mem_path);
@@ -120,7 +121,8 @@ static void file_memory_backend_set_align(Object *o, Visitor *v,
    uint64_t val;

    if (host_memory_backend_mr_inited(backend)) {
        error_setg(&local_err, "cannot change property value");
        error_setg(&local_err, "cannot change property '%s' of %s",
                   name, object_get_typename(o));
        goto out;
    }

+5 −3
Original line number Diff line number Diff line
@@ -57,7 +57,8 @@ host_memory_backend_set_size(Object *obj, Visitor *v, const char *name,
    uint64_t value;

    if (host_memory_backend_mr_inited(backend)) {
        error_setg(&local_err, "cannot change property value");
        error_setg(&local_err, "cannot change property %s of %s ",
                   name, object_get_typename(obj));
        goto out;
    }

@@ -66,8 +67,9 @@ host_memory_backend_set_size(Object *obj, Visitor *v, const char *name,
        goto out;
    }
    if (!value) {
        error_setg(&local_err, "Property '%s.%s' doesn't take value '%"
                   PRIu64 "'", object_get_typename(obj), name, value);
        error_setg(&local_err,
                   "property '%s' of %s doesn't take value '%" PRIu64 "'",
                   name, object_get_typename(obj), value);
        goto out;
    }
    backend->size = value;