ERST
DEF("smp", HAS_ARG, QEMU_OPTION_smp,
- "-smp [cpus=]n[,maxcpus=cpus][,cores=cores][,threads=threads][,dies=dies][,sockets=sockets]\n"
+ "-smp [[cpus=]n][,maxcpus=cpus][,sockets=sockets][,dies=dies][,cores=cores][,threads=threads]\n"
" set the number of CPUs to 'n' [default=1]\n"
- " maxcpus= maximum number of total cpus, including\n"
+ " maxcpus= maximum number of total CPUs, including\n"
" offline CPUs for hotplug, etc\n"
- " cores= number of CPU cores on one socket (for PC, it's on one die)\n"
- " threads= number of threads on one CPU core\n"
+ " sockets= number of discrete sockets in the system\n"
" dies= number of CPU dies on one socket (for PC only)\n"
- " sockets= number of discrete sockets in the system\n",
+ " cores= number of CPU cores on one socket (for PC, it's on one die)\n"
+ " threads= number of threads on one CPU core\n",
QEMU_ARCH_ALL)
SRST
-``-smp [cpus=]n[,cores=cores][,threads=threads][,dies=dies][,sockets=sockets][,maxcpus=maxcpus]``
- Simulate an SMP system with n CPUs. On the PC target, up to 255 CPUs
- are supported. On Sparc32 target, Linux limits the number of usable
- CPUs to 4. For the PC target, the number of cores per die, the
- number of threads per cores, the number of dies per packages and the
- total number of sockets can be specified. Missing values will be
- computed. If any on the three values is given, the total number of
- CPUs n can be omitted. maxcpus specifies the maximum number of
- hotpluggable CPUs.
+``-smp [[cpus=]n][,maxcpus=maxcpus][,sockets=sockets][,dies=dies][,cores=cores][,threads=threads]``
+ Simulate a SMP system with '\ ``n``\ ' CPUs initially present on
+ the machine type board. On boards supporting CPU hotplug, the optional
+ '\ ``maxcpus``\ ' parameter can be set to enable further CPUs to be
+ added at runtime. If omitted the maximum number of CPUs will be
+ set to match the initial CPU count. Both parameters are subject to
+ an upper limit that is determined by the specific machine type chosen.
+
+ To control reporting of CPU topology information, the number of sockets,
+ dies per socket, cores per die, and threads per core can be specified.
+ The sum `` sockets * cores * dies * threads `` must be equal to the
+ maximum CPU count. CPU targets may only support a subset of the topology
+ parameters. Where a CPU target does not support use of a particular
+ topology parameter, its value should be assumed to be 1 for the purpose
+ of computing the CPU maximum count.
+
+ Either the initial CPU count, or at least one of the topology parameters
+ must be specified. Values for any omitted parameters will be computed
+ from those which are given. Historically preference was given to the
+ coarsest topology parameters when computing missing values (ie sockets
+ preferred over cores, which were preferred over threads), however, this
+ behaviour is considered liable to change.
ERST
DEF("numa", HAS_ARG, QEMU_OPTION_numa,
``-device pci-ipmi-bt,bmc=id``
Like the KCS interface, but defines a BT interface on the PCI bus.
+
+``-device intel-iommu[,option=...]``
+ This is only supported by ``-machine q35``, which will enable Intel VT-d
+ emulation within the guest. It supports below options:
+
+ ``intremap=on|off`` (default: auto)
+ This enables interrupt remapping feature. It's required to enable
+ complete x2apic. Currently it only supports kvm kernel-irqchip modes
+ ``off`` or ``split``, while full kernel-irqchip is not yet supported.
+ The default value is "auto", which will be decided by the mode of
+ kernel-irqchip.
+
+ ``caching-mode=on|off`` (default: off)
+ This enables caching mode for the VT-d emulated device. When
+ caching-mode is enabled, each guest DMA buffer mapping will generate an
+ IOTLB invalidation from the guest IOMMU driver to the vIOMMU device in
+ a synchronous way. It is required for ``-device vfio-pci`` to work
+ with the VT-d device, because host assigned devices requires to setup
+ the DMA mapping on the host before guest DMA starts.
+
+ ``device-iotlb=on|off`` (default: off)
+ This enables device-iotlb capability for the emulated VT-d device. So
+ far virtio/vhost should be the only real user for this parameter,
+ paired with ats=on configured for the device.
+
+ ``aw-bits=39|48`` (default: 39)
+ This decides the address width of IOVA address space. The address
+ space has 39 bits width for 3-level IOMMU page tables, and 48 bits for
+ 4-level IOMMU page tables.
+
+ Please also refer to the wiki page for general scenarios of VT-d
+ emulation in QEMU: https://wiki.qemu.org/Features/VT-d.
+
ERST
DEF("name", HAS_ARG, QEMU_OPTION_name,
"-display spice-app[,gl=on|off]\n"
#endif
#if defined(CONFIG_SDL)
- "-display sdl[,alt_grab=on|off][,ctrl_grab=on|off]\n"
- " [,window_close=on|off][,gl=on|core|es|off]\n"
+ "-display sdl[,alt_grab=on|off][,ctrl_grab=on|off][,gl=on|core|es|off]\n"
+ " [,show-cursor=on|off][,window-close=on|off]\n"
#endif
#if defined(CONFIG_GTK)
- "-display gtk[,grab_on_hover=on|off][,gl=on|off]|\n"
+ "-display gtk[,full-screen=on|off][,gl=on|off][,grab-on-hover=on|off]\n"
+ " [,show-cursor=on|off][,window-close=on|off]\n"
#endif
#if defined(CONFIG_VNC)
"-display vnc=<display>[,<optargs>]\n"
application. The Spice server will redirect the serial consoles
and QEMU monitors. (Since 4.0)
- ``sdl[,window-close=on|off][,gl=on|core|es|off]``
-
+ ``sdl``
Display video output via SDL (usually in a separate graphics
window; see the SDL documentation for other possibilities).
+ Valid parameters are:
+
+ ``alt_grab=on|off`` : Use Control+Alt+Shift-g to toggle mouse grabbing
+
+ ``ctrl_grab=on|off`` : Use Right-Control-g to toggle mouse grabbing
+
+ ``gl=on|off|core|es`` : Use OpenGL for displaying
+
+ ``show-cursor=on|off`` : Force showing the mouse cursor
+
+ ``window-close=on|off`` : Allow to quit qemu with window close button
- ``gtk[,grab-on-hover=on|off][,gl=on|off]``
+ ``gtk``
Display video output in a GTK window. This interface provides
drop-down menus and other UI elements to configure and control
- the VM during runtime.
+ the VM during runtime. Valid parameters are:
- ``curses [,charset=<encoding>]``
+ ``full-screen=on|off`` : Start in fullscreen mode
+
+ ``gl=on|off`` : Use OpenGL for displaying
+
+ ``grab-on-hover=on|off`` : Grab keyboard input on mouse hover
+
+ ``show-cursor=on|off`` : Force showing the mouse cursor
+
+ ``window-close=on|off`` : Allow to quit qemu with window close button
+
+ ``curses[,charset=<encoding>]``
Display video output via curses. For graphics device models
which support a text mode, QEMU can display this output using a
curses/ncurses interface. Nothing is displayed when the graphics
``charset=CP850`` for IBM CP850 encoding. The default is
``CP437``.
- ``egl-headless[,rendernode<file>]``
+ ``egl-headless[,rendernode=<file>]``
Offload all OpenGL operations to a local DRI device. For any
graphical display, this display needs to be paired with either
VNC or SPICE displays.
+ ``vnc=<display>``
+ Start a VNC server on display <display>
+
``none``
Do not display video output. The guest will still see an
emulated graphics card, but its output will not be displayed to
that it only affects what is done with video output; -nographic
also changes the destination of the serial and parallel port
data.
-
-
-
ERST
DEF("nographic", 0, QEMU_OPTION_nographic,
ERST
DEF("no-quit", 0, QEMU_OPTION_no_quit,
- "-no-quit disable SDL window close capability\n", QEMU_ARCH_ALL)
+ "-no-quit disable SDL/GTK window close capability (deprecated)\n", QEMU_ARCH_ALL)
SRST
``-no-quit``
- Disable SDL window close capability.
+ Disable window close capability (SDL and GTK only). This option is
+ deprecated, please use ``-display ...,window-close=off`` instead.
ERST
DEF("sdl", 0, QEMU_OPTION_sdl,