[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 08/22] char: remove qemu_chardev_add
From: |
Marc-André Lureau |
Subject: |
[Qemu-devel] [PATCH 08/22] char: remove qemu_chardev_add |
Date: |
Thu, 2 Feb 2017 18:51:27 +0400 |
qemu_chardev_new() now uses object_new_with_props() with /chardevs
parent container. It will fail to insert the object if the same "id"
already exists. "chardevs" list usage has been removed in previous
commits.
Signed-off-by: Marc-André Lureau <address@hidden>
---
chardev/char.c | 31 ++++++-------------------------
1 file changed, 6 insertions(+), 25 deletions(-)
diff --git a/chardev/char.c b/chardev/char.c
index bdba808188..1103b08177 100644
--- a/chardev/char.c
+++ b/chardev/char.c
@@ -801,26 +801,6 @@ static const ChardevClass *char_get_class(const char
*driver, Error **errp)
return cc;
}
-static Chardev *qemu_chardev_add(const char *id, const char *typename,
- ChardevBackend *backend, Error **errp)
-{
- Chardev *chr;
-
- chr = qemu_chr_find(id);
- if (chr) {
- error_setg(errp, "Chardev '%s' already exists", id);
- return NULL;
- }
-
- chr = qemu_chardev_new(id, typename, backend, true, errp);
- if (!chr) {
- return NULL;
- }
-
- QTAILQ_INSERT_TAIL(&chardevs, chr, next);
- return chr;
-}
-
static const struct ChardevAlias {
const char *typename;
const char *alias;
@@ -937,9 +917,10 @@ Chardev *qemu_chr_new_from_opts(QemuOpts *opts,
backend->u.null.data = ccom; /* Any ChardevCommon member would work */
}
- chr = qemu_chardev_add(bid ? bid : id,
+ chr = qemu_chardev_new(bid ? bid : id,
object_class_get_name(OBJECT_CLASS(cc)),
- backend, errp);
+ backend, true, errp);
+
if (chr == NULL) {
goto out;
}
@@ -951,7 +932,7 @@ Chardev *qemu_chr_new_from_opts(QemuOpts *opts,
backend->type = CHARDEV_BACKEND_KIND_MUX;
backend->u.mux.data = g_new0(ChardevMux, 1);
backend->u.mux.data->chardev = g_strdup(bid);
- mux = qemu_chardev_add(id, TYPE_CHARDEV_MUX, backend, errp);
+ mux = qemu_chardev_new(id, TYPE_CHARDEV_MUX, backend, true, errp);
if (mux == NULL) {
qemu_chr_delete(chr);
chr = NULL;
@@ -1300,8 +1281,8 @@ ChardevReturn *qmp_chardev_add(const char *id,
ChardevBackend *backend,
return NULL;
}
- chr = qemu_chardev_add(id, object_class_get_name(OBJECT_CLASS(cc)),
- backend, errp);
+ chr = qemu_chardev_new(id, object_class_get_name(OBJECT_CLASS(cc)),
+ backend, true, errp);
if (!chr) {
return NULL;
}
--
2.11.0.295.gd7dffce1c.dirty
- Re: [Qemu-devel] [PATCH 05/22] main: free root container, (continued)
- [Qemu-devel] [PATCH 06/22] char: add a /chardevs container, Marc-André Lureau, 2017/02/02
- Re: [Qemu-devel] [PATCH 06/22] char: add a /chardevs container, Paolo Bonzini, 2017/02/06
- Re: [Qemu-devel] [PATCH 06/22] char: add a /chardevs container, Marc-André Lureau, 2017/02/07
- Re: [Qemu-devel] [PATCH 06/22] char: add a /chardevs container, Paolo Bonzini, 2017/02/09
- Re: [Qemu-devel] [PATCH 06/22] char: add a /chardevs container, Marc-André Lureau, 2017/02/10
- Re: [Qemu-devel] [PATCH 06/22] char: add a /chardevs container, Paolo Bonzini, 2017/02/10
- Re: [Qemu-devel] [PATCH 06/22] char: add a /chardevs container, Marc-André Lureau, 2017/02/10
- Re: [Qemu-devel] [PATCH 06/22] char: add a /chardevs container, Paolo Bonzini, 2017/02/10
[Qemu-devel] [PATCH 07/22] char: use /chardevs container instead of chardevs list, Marc-André Lureau, 2017/02/02
[Qemu-devel] [PATCH 08/22] char: remove qemu_chardev_add,
Marc-André Lureau <=
[Qemu-devel] [PATCH 09/22] char: remove chardevs list, Marc-André Lureau, 2017/02/02
[Qemu-devel] [PATCH 10/22] char: useless NULL check, Marc-André Lureau, 2017/02/02
[Qemu-devel] [PATCH 11/22] qcow2: remove useless NULL check, Marc-André Lureau, 2017/02/02
[Qemu-devel] [PATCH 12/22] char-socket: introduce update_disconnected_filename(), Marc-André Lureau, 2017/02/02
[Qemu-devel] [PATCH 13/22] char-socket: update local address after listen, Marc-André Lureau, 2017/02/02
[Qemu-devel] [PATCH 14/22] char-socket: add 'addr' property, Marc-André Lureau, 2017/02/02
[Qemu-devel] [PATCH 15/22] char-socket: add 'connected' property, Marc-André Lureau, 2017/02/02
[Qemu-devel] [PATCH 16/22] char-udp: flush as much buffer as possible, Marc-André Lureau, 2017/02/02
[Qemu-devel] [PATCH 17/22] tests: add alias check in /char/ringbuf, Marc-André Lureau, 2017/02/02