[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 11/12] chardev: Drop useless ChardevDummy type
From: |
Markus Armbruster |
Subject: |
[Qemu-devel] [PULL 11/12] chardev: Drop useless ChardevDummy type |
Date: |
Fri, 4 Mar 2016 17:45:27 +0100 |
From: Eric Blake <address@hidden>
Commit d0d7708b made ChardevDummy be an empty wrapper type around
ChardevCommon. But there is no technical reason for this indirection,
so simplify the code by directly using the base type.
Also change the fallback assignment to assign u.null rather than
u.data, since a future patch will remove the data member of the C
struct generated for QAPI unions.
Signed-off-by: Eric Blake <address@hidden>
Reviewed-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
---
backends/baum.c | 2 +-
backends/msmouse.c | 2 +-
qapi-schema.json | 15 ++++++---------
qemu-char.c | 8 ++++----
4 files changed, 12 insertions(+), 15 deletions(-)
diff --git a/backends/baum.c b/backends/baum.c
index 374562a..c11320e 100644
--- a/backends/baum.c
+++ b/backends/baum.c
@@ -567,7 +567,7 @@ static CharDriverState *chr_baum_init(const char *id,
ChardevReturn *ret,
Error **errp)
{
- ChardevCommon *common = qapi_ChardevDummy_base(backend->u.braille);
+ ChardevCommon *common = backend->u.braille;
BaumDriverState *baum;
CharDriverState *chr;
brlapi_handle_t *handle;
diff --git a/backends/msmouse.c b/backends/msmouse.c
index 9a82efd..5e1833c 100644
--- a/backends/msmouse.c
+++ b/backends/msmouse.c
@@ -68,7 +68,7 @@ static CharDriverState *qemu_chr_open_msmouse(const char *id,
ChardevReturn *ret,
Error **errp)
{
- ChardevCommon *common = qapi_ChardevDummy_base(backend->u.msmouse);
+ ChardevCommon *common = backend->u.msmouse;
CharDriverState *chr;
chr = qemu_chr_alloc(common, errp);
diff --git a/qapi-schema.json b/qapi-schema.json
index 42fd61b..362c9d8 100644
--- a/qapi-schema.json
+++ b/qapi-schema.json
@@ -3323,23 +3323,20 @@
#
# Since: 1.4 (testdev since 2.2)
##
-{ 'struct': 'ChardevDummy', 'data': { },
- 'base': 'ChardevCommon' }
-
{ 'union': 'ChardevBackend', 'data': { 'file' : 'ChardevFile',
'serial' : 'ChardevHostdev',
'parallel': 'ChardevHostdev',
'pipe' : 'ChardevHostdev',
'socket' : 'ChardevSocket',
'udp' : 'ChardevUdp',
- 'pty' : 'ChardevDummy',
- 'null' : 'ChardevDummy',
+ 'pty' : 'ChardevCommon',
+ 'null' : 'ChardevCommon',
'mux' : 'ChardevMux',
- 'msmouse': 'ChardevDummy',
- 'braille': 'ChardevDummy',
- 'testdev': 'ChardevDummy',
+ 'msmouse': 'ChardevCommon',
+ 'braille': 'ChardevCommon',
+ 'testdev': 'ChardevCommon',
'stdio' : 'ChardevStdio',
- 'console': 'ChardevDummy',
+ 'console': 'ChardevCommon',
'spicevmc' : 'ChardevSpiceChannel',
'spiceport' : 'ChardevSpicePort',
'vc' : 'ChardevVC',
diff --git a/qemu-char.c b/qemu-char.c
index af31102..e0147f3 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -420,7 +420,7 @@ static CharDriverState *qemu_chr_open_null(const char *id,
Error **errp)
{
CharDriverState *chr;
- ChardevCommon *common = qapi_ChardevDummy_base(backend->u.null);
+ ChardevCommon *common = backend->u.null;
chr = qemu_chr_alloc(common, errp);
if (!chr) {
@@ -1366,7 +1366,7 @@ static CharDriverState *qemu_chr_open_pty(const char *id,
PtyCharDriver *s;
int master_fd, slave_fd;
char pty_name[PATH_MAX];
- ChardevCommon *common = qapi_ChardevDummy_base(backend->u.pty);
+ ChardevCommon *common = backend->u.pty;
master_fd = qemu_openpty_raw(&slave_fd, pty_name);
if (master_fd < 0) {
@@ -2183,7 +2183,7 @@ static CharDriverState *qemu_chr_open_win_con(const char
*id,
ChardevReturn *ret,
Error **errp)
{
- ChardevCommon *common = qapi_ChardevDummy_base(backend->u.console);
+ ChardevCommon *common = backend->u.console;
return qemu_chr_open_win_file(GetStdHandle(STD_OUTPUT_HANDLE),
common, errp);
}
@@ -3817,7 +3817,7 @@ CharDriverState *qemu_chr_new_from_opts(QemuOpts *opts,
} else {
ChardevCommon *cc = g_new0(ChardevCommon, 1);
qemu_chr_parse_common(opts, cc);
- backend->u.data = cc;
+ backend->u.null = cc; /* Any ChardevCommon member would work */
}
ret = qmp_chardev_add(bid ? bid : id, backend, errp);
--
2.4.3
- [Qemu-devel] [PULL 00/12] QAPI patches for 2016-03-04, Markus Armbruster, 2016/03/04
- [Qemu-devel] [PULL 04/12] qapi: Rename 'fields' to 'members' in generated C code, Markus Armbruster, 2016/03/04
- [Qemu-devel] [PULL 10/12] qapi: Avoid use of 'data' member of QAPI unions, Markus Armbruster, 2016/03/04
- [Qemu-devel] [PULL 02/12] qapi-dealloc: Reduce use outside of generated code, Markus Armbruster, 2016/03/04
- [Qemu-devel] [PULL 01/12] qmp-shell: fix pretty printing of JSON responses, Markus Armbruster, 2016/03/04
- [Qemu-devel] [PULL 03/12] qapi: Rename 'fields' to 'members' in generator, Markus Armbruster, 2016/03/04
- [Qemu-devel] [PULL 05/12] qapi-visit: Expose visit_type_FOO_members(), Markus Armbruster, 2016/03/04
- [Qemu-devel] [PULL 07/12] chardev: Shorten references into ChardevBackend, Markus Armbruster, 2016/03/04
- [Qemu-devel] [PULL 12/12] qapi: Drop useless 'data' member of unions, Markus Armbruster, 2016/03/04
- [Qemu-devel] [PULL 11/12] chardev: Drop useless ChardevDummy type,
Markus Armbruster <=
- [Qemu-devel] [PULL 06/12] qapi: Update docs to match recent generator changes, Markus Armbruster, 2016/03/04
- [Qemu-devel] [PULL 08/12] util: Shorten references into SocketAddress, Markus Armbruster, 2016/03/04
- [Qemu-devel] [PULL 09/12] ui: Shorten references into InputEvent, Markus Armbruster, 2016/03/04
- Re: [Qemu-devel] [PULL 00/12] QAPI patches for 2016-03-04, Peter Maydell, 2016/03/04