On 30/05/19 23:57, Wainer dos Santos Moschetta wrote: > Currently, -accel help shows all possible accelerators regardless > if they are enabled in the binary or not. That is a different > semantic from -cpu and -machine helps, for example. So this change > makes it to list only the accelerators which support is compiled > in the binary target. > > Note that it does not check if the accelerator is enabled in the > host, so the help message's header was rewritten to emphasize > that. Also qtest is not displayed given that it is used for > internal testing purpose only. > > Signed-off-by: Wainer dos Santos Moschetta <waine...@redhat.com> > --- > vl.c | 18 +++++++++++++++++- > 1 file changed, 17 insertions(+), 1 deletion(-) > > diff --git a/vl.c b/vl.c > index 2e69c9fef2..e5d40c01f8 100644 > --- a/vl.c > +++ b/vl.c > @@ -3575,7 +3575,23 @@ int main(int argc, char **argv, char **envp) > optarg, true); > optarg = qemu_opt_get(accel_opts, "accel"); > if (!optarg || is_help_option(optarg)) { > - printf("Possible accelerators: kvm, xen, hax, tcg\n"); > + printf("Accelerators supported in QEMU binary:\n"); > + GSList *el, *accel_list = > object_class_get_list(TYPE_ACCEL, > + false); > + for (el = accel_list; el; el = el->next) { > + gchar *typename = g_strdup(object_class_get_name( > + OBJECT_CLASS(el->data))); > + /* omit qtest which is used for tests only */ > + if (g_strcmp0(typename, ACCEL_CLASS_NAME("qtest")) && > + g_str_has_suffix(typename, ACCEL_CLASS_SUFFIX)) { > + gchar **optname = g_strsplit(typename, > + ACCEL_CLASS_SUFFIX, > 0); > + printf("%s\n", optname[0]); > + g_free(optname); > + } > + g_free(typename); > + } > + g_slist_free(accel_list); > exit(0); > } > opts = qemu_opts_create(qemu_find_opts("machine"), NULL, >
Queued, thanks! Paolo