aboutsummaryrefslogtreecommitdiff
path: root/monitor/misc.c
diff options
context:
space:
mode:
authorEric Blake <eblake@redhat.com>2020-11-12 19:13:37 -0600
committerMarkus Armbruster <armbru@redhat.com>2020-12-19 10:20:14 +0100
commit54aa3de72ea2aaa2e903e7e879a4f3dda515a00e (patch)
tree5f1041c336d7a5064f338179022901ab56d8b5d1 /monitor/misc.c
parenteaedde5255842e8add96bec127567e2a8b3be9a8 (diff)
qapi: Use QAPI_LIST_PREPEND() where possible
Anywhere we create a list of just one item or by prepending items (typically because order doesn't matter), we can use QAPI_LIST_PREPEND(). But places where we must keep the list in order by appending remain open-coded until later patches. Note that as a side effect, this also performs a cleanup of two minor issues in qga/commands-posix.c: the old code was performing new = g_malloc0(sizeof(*ret)); which 1) is confusing because you have to verify whether 'new' and 'ret' are variables with the same type, and 2) would conflict with C++ compilation (not an actual problem for this file, but makes copy-and-paste harder). Signed-off-by: Eric Blake <eblake@redhat.com> Message-Id: <20201113011340.463563-5-eblake@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Acked-by: Stefan Hajnoczi <stefanha@redhat.com> [Straightforward conflicts due to commit a8aa94b5f8 "qga: update schema for guest-get-disks 'dependents' field" and commit a10b453a52 "target/mips: Move mips_cpu_add_definition() from helper.c to cpu.c" resolved. Commit message tweaked.] Signed-off-by: Markus Armbruster <armbru@redhat.com>
Diffstat (limited to 'monitor/misc.c')
-rw-r--r--monitor/misc.c25
1 files changed, 9 insertions, 16 deletions
diff --git a/monitor/misc.c b/monitor/misc.c
index fde6e36a0b..f2ee7cd77a 100644
--- a/monitor/misc.c
+++ b/monitor/misc.c
@@ -1430,33 +1430,26 @@ FdsetInfoList *qmp_query_fdsets(Error **errp)
QEMU_LOCK_GUARD(&mon_fdsets_lock);
QLIST_FOREACH(mon_fdset, &mon_fdsets, next) {
- FdsetInfoList *fdset_info = g_malloc0(sizeof(*fdset_info));
- FdsetFdInfoList *fdsetfd_list = NULL;
+ FdsetInfo *fdset_info = g_malloc0(sizeof(*fdset_info));
- fdset_info->value = g_malloc0(sizeof(*fdset_info->value));
- fdset_info->value->fdset_id = mon_fdset->id;
+ fdset_info->fdset_id = mon_fdset->id;
QLIST_FOREACH(mon_fdset_fd, &mon_fdset->fds, next) {
- FdsetFdInfoList *fdsetfd_info;
+ FdsetFdInfo *fdsetfd_info;
fdsetfd_info = g_malloc0(sizeof(*fdsetfd_info));
- fdsetfd_info->value = g_malloc0(sizeof(*fdsetfd_info->value));
- fdsetfd_info->value->fd = mon_fdset_fd->fd;
+ fdsetfd_info->fd = mon_fdset_fd->fd;
if (mon_fdset_fd->opaque) {
- fdsetfd_info->value->has_opaque = true;
- fdsetfd_info->value->opaque = g_strdup(mon_fdset_fd->opaque);
+ fdsetfd_info->has_opaque = true;
+ fdsetfd_info->opaque = g_strdup(mon_fdset_fd->opaque);
} else {
- fdsetfd_info->value->has_opaque = false;
+ fdsetfd_info->has_opaque = false;
}
- fdsetfd_info->next = fdsetfd_list;
- fdsetfd_list = fdsetfd_info;
+ QAPI_LIST_PREPEND(fdset_info->fds, fdsetfd_info);
}
- fdset_info->value->fds = fdsetfd_list;
-
- fdset_info->next = fdset_list;
- fdset_list = fdset_info;
+ QAPI_LIST_PREPEND(fdset_list, fdset_info);
}
return fdset_list;