summaryrefslogtreecommitdiffstats
path: root/docs/system/managed-startup.rst
diff options
context:
space:
mode:
authorPeter Maydell2020-02-28 16:36:03 +0100
committerPeter Maydell2020-03-06 11:05:12 +0100
commit2f4325df9e82507c7d55d1c7e2c72f2fdaf0237a (patch)
tree1d8ac8fac5454d69f58fbc8179bd4bb7f1214b81 /docs/system/managed-startup.rst
parentdocs/system: Convert security.texi to rST format (diff)
downloadqemu-2f4325df9e82507c7d55d1c7e2c72f2fdaf0237a.tar.gz
qemu-2f4325df9e82507c7d55d1c7e2c72f2fdaf0237a.tar.xz
qemu-2f4325df9e82507c7d55d1c7e2c72f2fdaf0237a.zip
docs/system: convert managed startup to rST.
Fix one typo in the process and format more option and command names as literal text, but make no significant changes to the content. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Tested-by: Alex Bennée <alex.bennee@linaro.org> Message-id: 20200228153619.9906-18-peter.maydell@linaro.org Message-id: 20200226113034.6741-17-pbonzini@redhat.com
Diffstat (limited to 'docs/system/managed-startup.rst')
-rw-r--r--docs/system/managed-startup.rst35
1 files changed, 35 insertions, 0 deletions
diff --git a/docs/system/managed-startup.rst b/docs/system/managed-startup.rst
new file mode 100644
index 0000000000..9bcf98ea79
--- /dev/null
+++ b/docs/system/managed-startup.rst
@@ -0,0 +1,35 @@
+Managed start up options
+========================
+
+In system mode emulation, it's possible to create a VM in a paused
+state using the ``-S`` command line option. In this state the machine
+is completely initialized according to command line options and ready
+to execute VM code but VCPU threads are not executing any code. The VM
+state in this paused state depends on the way QEMU was started. It
+could be in:
+
+- initial state (after reset/power on state)
+- with direct kernel loading, the initial state could be amended to execute
+ code loaded by QEMU in the VM's RAM and with incoming migration
+- with incoming migration, initial state will be amended with the migrated
+ machine state after migration completes
+
+This paused state is typically used by users to query machine state and/or
+additionally configure the machine (by hotplugging devices) in runtime before
+allowing VM code to run.
+
+However, at the ``-S`` pause point, it's impossible to configure options
+that affect initial VM creation (like: ``-smp``/``-m``/``-numa`` ...) or
+cold plug devices. The experimental ``--preconfig`` command line option
+allows pausing QEMU before the initial VM creation, in a "preconfig" state,
+where additional queries and configuration can be performed via QMP
+before moving on to the resulting configuration startup. In the
+preconfig state, QEMU only allows a limited set of commands over the
+QMP monitor, where the commands do not depend on an initialized
+machine, including but not limited to:
+
+- ``qmp_capabilities``
+- ``query-qmp-schema``
+- ``query-commands``
+- ``query-status``
+- ``x-exit-preconfig``