aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Armbruster <armbru@redhat.com>2019-04-17 21:06:41 +0200
committerMarkus Armbruster <armbru@redhat.com>2019-04-18 22:18:59 +0200
commit8acb2a758bdeb15027ae3150fc0f4e14f6078006 (patch)
tree578d7fcf17e21d159e7a909eaa925a338b7069e5
parent6ade45f2ac936114d82a18ed10df1fb717f4a584 (diff)
monitor: Simplify how -device/device_add print help
Commit a95db58f210 added monitor_vfprintf() as an error_printf() generalized from stderr to arbitrary streams, then used it wrapped in helper out_printf() to print -device/device_add help to stdout. Use qemu_printf() instead, and delete monitor_vfprintf() and out_printf(). Cc: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Message-Id: <20190417190641.26814-16-armbru@redhat.com>
-rw-r--r--include/monitor/monitor.h3
-rw-r--r--monitor.c14
-rw-r--r--qdev-monitor.c36
3 files changed, 17 insertions, 36 deletions
diff --git a/include/monitor/monitor.h b/include/monitor/monitor.h
index e4c3717454..316a168c41 100644
--- a/include/monitor/monitor.h
+++ b/include/monitor/monitor.h
@@ -48,7 +48,4 @@ int monitor_fdset_dup_fd_add(int64_t fdset_id, int dup_fd);
void monitor_fdset_dup_fd_remove(int dup_fd);
int monitor_fdset_dup_fd_find(int dup_fd);
-int monitor_vfprintf(FILE *stream,
- const char *fmt, va_list ap) GCC_FMT_ATTR(2, 0);
-
#endif /* MONITOR_H */
diff --git a/monitor.c b/monitor.c
index 7b4a78d798..10be8bdb86 100644
--- a/monitor.c
+++ b/monitor.c
@@ -4542,22 +4542,14 @@ static void monitor_readline_flush(void *opaque)
}
/*
- * Print to current monitor if we have one, else to stream.
+ * Print to current monitor if we have one, else to stderr.
*/
-int monitor_vfprintf(FILE *stream, const char *fmt, va_list ap)
+int error_vprintf(const char *fmt, va_list ap)
{
if (cur_mon && !monitor_cur_is_qmp()) {
return monitor_vprintf(cur_mon, fmt, ap);
}
- return vfprintf(stream, fmt, ap);
-}
-
-/*
- * Print to current monitor if we have one, else to stderr.
- */
-int error_vprintf(const char *fmt, va_list ap)
-{
- return monitor_vfprintf(stderr, fmt, ap);
+ return vfprintf(stderr, fmt, ap);
}
int error_vprintf_unless_qmp(const char *fmt, va_list ap)
diff --git a/qdev-monitor.c b/qdev-monitor.c
index d4320986a2..373b9ad445 100644
--- a/qdev-monitor.c
+++ b/qdev-monitor.c
@@ -31,6 +31,7 @@
#include "qemu/error-report.h"
#include "qemu/help_option.h"
#include "qemu/option.h"
+#include "qemu/qemu-print.h"
#include "sysemu/block-backend.h"
#include "migration/misc.h"
@@ -104,31 +105,22 @@ static bool qdev_class_has_alias(DeviceClass *dc)
return (qdev_class_get_alias(dc) != NULL);
}
-static void out_printf(const char *fmt, ...)
-{
- va_list ap;
-
- va_start(ap, fmt);
- monitor_vfprintf(stdout, fmt, ap);
- va_end(ap);
-}
-
static void qdev_print_devinfo(DeviceClass *dc)
{
- out_printf("name \"%s\"", object_class_get_name(OBJECT_CLASS(dc)));
+ qemu_printf("name \"%s\"", object_class_get_name(OBJECT_CLASS(dc)));
if (dc->bus_type) {
- out_printf(", bus %s", dc->bus_type);
+ qemu_printf(", bus %s", dc->bus_type);
}
if (qdev_class_has_alias(dc)) {
- out_printf(", alias \"%s\"", qdev_class_get_alias(dc));
+ qemu_printf(", alias \"%s\"", qdev_class_get_alias(dc));
}
if (dc->desc) {
- out_printf(", desc \"%s\"", dc->desc);
+ qemu_printf(", desc \"%s\"", dc->desc);
}
if (!dc->user_creatable) {
- out_printf(", no-user");
+ qemu_printf(", no-user");
}
- out_printf("\n");
+ qemu_printf("\n");
}
static void qdev_print_devinfos(bool show_no_user)
@@ -164,7 +156,7 @@ static void qdev_print_devinfos(bool show_no_user)
continue;
}
if (!cat_printed) {
- out_printf("%s%s devices:\n", i ? "\n" : "", cat_name[i]);
+ qemu_printf("%s%s devices:\n", i ? "\n" : "", cat_name[i]);
cat_printed = true;
}
qdev_print_devinfo(dc);
@@ -286,20 +278,20 @@ int qdev_device_help(QemuOpts *opts)
}
if (prop_list) {
- out_printf("%s options:\n", driver);
+ qemu_printf("%s options:\n", driver);
} else {
- out_printf("There are no options for %s.\n", driver);
+ qemu_printf("There are no options for %s.\n", driver);
}
for (prop = prop_list; prop; prop = prop->next) {
int len;
- out_printf(" %s=<%s>%n", prop->value->name, prop->value->type, &len);
+ qemu_printf(" %s=<%s>%n", prop->value->name, prop->value->type, &len);
if (prop->value->has_description) {
if (len < 24) {
- out_printf("%*s", 24 - len, "");
+ qemu_printf("%*s", 24 - len, "");
}
- out_printf(" - %s\n", prop->value->description);
+ qemu_printf(" - %s\n", prop->value->description);
} else {
- out_printf("\n");
+ qemu_printf("\n");
}
}