Fix the -accel parameter and the documentation for 'hax'
Since 'hax' is a possible accelerator nowadays, too, the '-accel' option should support it and we should mention this accelerator in the documentation, too. Signed-off-by: Thomas Huth <thuth@redhat.com> Message-Id: <1493875481-16388-1-git-send-email-thuth@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
6796b4008b
commit
bde4d9205e
@ -31,7 +31,7 @@ DEF("machine", HAS_ARG, QEMU_OPTION_machine, \
|
||||
"-machine [type=]name[,prop[=value][,...]]\n"
|
||||
" selects emulated machine ('-machine help' for list)\n"
|
||||
" property accel=accel1[:accel2[:...]] selects accelerator\n"
|
||||
" supported accelerators are kvm, xen, tcg (default: tcg)\n"
|
||||
" supported accelerators are kvm, xen, hax or tcg (default: tcg)\n"
|
||||
" kernel_irqchip=on|off|split controls accelerated irqchip support (default=off)\n"
|
||||
" vmport=on|off|auto controls emulation of vmport (default: auto)\n"
|
||||
" kvm_shadow_mem=size of KVM shadow MMU in bytes\n"
|
||||
@ -52,9 +52,9 @@ available machines. Supported machine properties are:
|
||||
@table @option
|
||||
@item accel=@var{accels1}[:@var{accels2}[:...]]
|
||||
This is used to enable an accelerator. Depending on the target architecture,
|
||||
kvm, xen, or tcg can be available. By default, tcg is used. If there is more
|
||||
than one accelerator specified, the next one is used if the previous one fails
|
||||
to initialize.
|
||||
kvm, xen, hax or tcg can be available. By default, tcg is used. If there is
|
||||
more than one accelerator specified, the next one is used if the previous one
|
||||
fails to initialize.
|
||||
@item kernel_irqchip=on|off
|
||||
Controls in-kernel irqchip support for the chosen accelerator when available.
|
||||
@item gfx_passthru=on|off
|
||||
@ -97,15 +97,15 @@ ETEXI
|
||||
|
||||
DEF("accel", HAS_ARG, QEMU_OPTION_accel,
|
||||
"-accel [accel=]accelerator[,thread=single|multi]\n"
|
||||
" select accelerator ('-accel help for list')\n"
|
||||
" thread=single|multi (enable multi-threaded TCG)", QEMU_ARCH_ALL)
|
||||
" select accelerator (kvm, xen, hax or tcg; use 'help' for a list)\n"
|
||||
" thread=single|multi (enable multi-threaded TCG)", QEMU_ARCH_ALL)
|
||||
STEXI
|
||||
@item -accel @var{name}[,prop=@var{value}[,...]]
|
||||
@findex -accel
|
||||
This is used to enable an accelerator. Depending on the target architecture,
|
||||
kvm, xen, or tcg can be available. By default, tcg is used. If there is more
|
||||
than one accelerator specified, the next one is used if the previous one fails
|
||||
to initialize.
|
||||
kvm, xen, hax or tcg can be available. By default, tcg is used. If there is
|
||||
more than one accelerator specified, the next one is used if the previous one
|
||||
fails to initialize.
|
||||
@table @option
|
||||
@item thread=single|multi
|
||||
Controls number of TCG threads. When the TCG is multi-threaded there will be one
|
||||
|
23
vl.c
23
vl.c
@ -3727,26 +3727,21 @@ int main(int argc, char **argv, char **envp)
|
||||
qdev_prop_register_global(&kvm_pit_lost_tick_policy);
|
||||
break;
|
||||
}
|
||||
case QEMU_OPTION_accel:
|
||||
case QEMU_OPTION_accel: {
|
||||
QemuOpts *accel_opts;
|
||||
|
||||
accel_opts = qemu_opts_parse_noisily(qemu_find_opts("accel"),
|
||||
optarg, true);
|
||||
optarg = qemu_opt_get(accel_opts, "accel");
|
||||
|
||||
olist = qemu_find_opts("machine");
|
||||
if (strcmp("kvm", optarg) == 0) {
|
||||
qemu_opts_parse_noisily(olist, "accel=kvm", false);
|
||||
} else if (strcmp("xen", optarg) == 0) {
|
||||
qemu_opts_parse_noisily(olist, "accel=xen", false);
|
||||
} else if (strcmp("tcg", optarg) == 0) {
|
||||
qemu_opts_parse_noisily(olist, "accel=tcg", false);
|
||||
} else {
|
||||
if (!is_help_option(optarg)) {
|
||||
error_printf("Unknown accelerator: %s", optarg);
|
||||
}
|
||||
error_printf("Supported accelerators: kvm, xen, tcg\n");
|
||||
if (!optarg || is_help_option(optarg)) {
|
||||
error_printf("Possible accelerators: kvm, xen, hax, tcg\n");
|
||||
exit(1);
|
||||
}
|
||||
accel_opts = qemu_opts_create(qemu_find_opts("machine"), NULL,
|
||||
false, &error_abort);
|
||||
qemu_opt_set(accel_opts, "accel", optarg, &error_abort);
|
||||
break;
|
||||
}
|
||||
case QEMU_OPTION_usb:
|
||||
olist = qemu_find_opts("machine");
|
||||
qemu_opts_parse_noisily(olist, "usb=on", false);
|
||||
|
Loading…
Reference in New Issue
Block a user