hmp: remove "change vnc TARGET" command
[qemu/ar7.git] / docs / system / removed-features.rst
blob5b0ff6ab1fc6ce73543a2c1007bda723d8017e25
2 Removed features
3 ================
5 What follows is a record of recently removed, formerly deprecated
6 features that serves as a record for users who have encountered
7 trouble after a recent upgrade.
9 System emulator command line arguments
10 --------------------------------------
12 ``-net ...,name=``\ *name* (removed in 5.1)
13 '''''''''''''''''''''''''''''''''''''''''''
15 The ``name`` parameter of the ``-net`` option was a synonym
16 for the ``id`` parameter, which should now be used instead.
18 ``-no-kvm`` (removed in 5.2)
19 ''''''''''''''''''''''''''''
21 The ``-no-kvm`` argument was a synonym for setting ``-machine accel=tcg``.
23 ``-realtime`` (removed in 6.0)
24 ''''''''''''''''''''''''''''''
26 The ``-realtime mlock=on|off`` argument has been replaced by the
27 ``-overcommit mem-lock=on|off`` argument.
29 ``-show-cursor`` option (since 5.0)
30 '''''''''''''''''''''''''''''''''''
32 Use ``-display sdl,show-cursor=on``, ``-display gtk,show-cursor=on``
33 or ``-display default,show-cursor=on`` instead.
35 ``-tb-size`` option (removed in 6.0)
36 ''''''''''''''''''''''''''''''''''''
38 QEMU 5.0 introduced an alternative syntax to specify the size of the translation
39 block cache, ``-accel tcg,tb-size=``.
41 QEMU Machine Protocol (QMP) commands
42 ------------------------------------
44 ``block-dirty-bitmap-add`` "autoload" parameter (removed in 4.2.0)
45 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
47 The "autoload" parameter has been ignored since 2.12.0. All bitmaps
48 are automatically loaded from qcow2 images.
50 ``cpu-add`` (removed in 5.2)
51 ''''''''''''''''''''''''''''
53 Use ``device_add`` for hotplugging vCPUs instead of ``cpu-add``.  See
54 documentation of ``query-hotpluggable-cpus`` for additional details.
56 Human Monitor Protocol (HMP) commands
57 -------------------------------------
59 The ``hub_id`` parameter of ``hostfwd_add`` / ``hostfwd_remove`` (removed in 5.0)
60 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
62 The ``[hub_id name]`` parameter tuple of the 'hostfwd_add' and
63 'hostfwd_remove' HMP commands has been replaced by ``netdev_id``.
65 ``cpu-add`` (removed in 5.2)
66 ''''''''''''''''''''''''''''
68 Use ``device_add`` for hotplugging vCPUs instead of ``cpu-add``.  See
69 documentation of ``query-hotpluggable-cpus`` for additional details.
71 ``change vnc TARGET`` (removed in 6.0)
72 ''''''''''''''''''''''''''''''''''''''
74 No replacement.  The ``change vnc password`` and ``change DEVICE MEDIUM``
75 commands are not affected.
77 Guest Emulator ISAs
78 -------------------
80 RISC-V ISA privilege specification version 1.09.1 (removed in 5.1)
81 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
83 The RISC-V ISA privilege specification version 1.09.1 has been removed.
84 QEMU supports both the newer version 1.10.0 and the ratified version 1.11.0, these
85 should be used instead of the 1.09.1 version.
87 System emulator CPUS
88 --------------------
90 KVM guest support on 32-bit Arm hosts (removed in 5.2)
91 ''''''''''''''''''''''''''''''''''''''''''''''''''''''
93 The Linux kernel has dropped support for allowing 32-bit Arm systems
94 to host KVM guests as of the 5.7 kernel. Accordingly, QEMU is deprecating
95 its support for this configuration and will remove it in a future version.
96 Running 32-bit guests on a 64-bit Arm host remains supported.
98 RISC-V ISA Specific CPUs (removed in 5.1)
99 '''''''''''''''''''''''''''''''''''''''''
101 The RISC-V cpus with the ISA version in the CPU name have been removed. The
102 four CPUs are: ``rv32gcsu-v1.9.1``, ``rv32gcsu-v1.10.0``, ``rv64gcsu-v1.9.1`` and
103 ``rv64gcsu-v1.10.0``. Instead the version can be specified via the CPU ``priv_spec``
104 option when using the ``rv32`` or ``rv64`` CPUs.
106 RISC-V no MMU CPUs (removed in 5.1)
107 '''''''''''''''''''''''''''''''''''
109 The RISC-V no MMU cpus have been removed. The two CPUs: ``rv32imacu-nommu`` and
110 ``rv64imacu-nommu`` can no longer be used. Instead the MMU status can be specified
111 via the CPU ``mmu`` option when using the ``rv32`` or ``rv64`` CPUs.
113 System emulator machines
114 ------------------------
116 ``spike_v1.9.1`` and ``spike_v1.10`` (removed in 5.1)
117 '''''''''''''''''''''''''''''''''''''''''''''''''''''
119 The version specific Spike machines have been removed in favour of the
120 generic ``spike`` machine. If you need to specify an older version of the RISC-V
121 spec you can use the ``-cpu rv64gcsu,priv_spec=v1.10.0`` command line argument.
123 mips ``r4k`` platform (removed in 5.2)
124 ''''''''''''''''''''''''''''''''''''''
126 This machine type was very old and unmaintained. Users should use the ``malta``
127 machine type instead.
129 mips ``fulong2e`` machine alias (removed in 6.0)
130 ''''''''''''''''''''''''''''''''''''''''''''''''
132 This machine has been renamed ``fuloong2e``.
134 Related binaries
135 ----------------
137 ``qemu-nbd --partition`` (removed in 5.0)
138 '''''''''''''''''''''''''''''''''''''''''
140 The ``qemu-nbd --partition $digit`` code (also spelled ``-P``)
141 could only handle MBR partitions, and never correctly handled logical
142 partitions beyond partition 5.  Exporting a partition can still be
143 done by utilizing the ``--image-opts`` option with a raw blockdev
144 using the ``offset`` and ``size`` parameters layered on top of
145 any other existing blockdev. For example, if partition 1 is 100MiB
146 long starting at 1MiB, the old command::
148   qemu-nbd -t -P 1 -f qcow2 file.qcow2
150 can be rewritten as::
152   qemu-nbd -t --image-opts driver=raw,offset=1M,size=100M,file.driver=qcow2,file.file.driver=file,file.file.filename=file.qcow2
154 ``qemu-img convert -n -o`` (removed in 5.1)
155 '''''''''''''''''''''''''''''''''''''''''''
157 All options specified in ``-o`` are image creation options, so
158 they are now rejected when used with ``-n`` to skip image creation.
161 ``qemu-img create -b bad file $size`` (removed in 5.1)
162 ''''''''''''''''''''''''''''''''''''''''''''''''''''''
164 When creating an image with a backing file that could not be opened,
165 ``qemu-img create`` used to issue a warning about the failure but
166 proceed with the image creation if an explicit size was provided.
167 However, as the ``-u`` option exists for this purpose, it is safer to
168 enforce that any failure to open the backing image (including if the
169 backing file is missing or an incorrect format was specified) is an
170 error when ``-u`` is not used.
172 Command line options
173 --------------------
175 ``-smp`` (invalid topologies) (removed 5.2)
176 '''''''''''''''''''''''''''''''''''''''''''
178 CPU topology properties should describe whole machine topology including
179 possible CPUs.
181 However, historically it was possible to start QEMU with an incorrect topology
182 where *n* <= *sockets* * *cores* * *threads* < *maxcpus*,
183 which could lead to an incorrect topology enumeration by the guest.
184 Support for invalid topologies is removed, the user must ensure
185 topologies described with -smp include all possible cpus, i.e.
186 *sockets* * *cores* * *threads* = *maxcpus*.
188 ``-numa`` node (without memory specified) (removed 5.2)
189 '''''''''''''''''''''''''''''''''''''''''''''''''''''''
191 Splitting RAM by default between NUMA nodes had the same issues as ``mem``
192 parameter with the difference that the role of the user plays QEMU using
193 implicit generic or board specific splitting rule.
194 Use ``memdev`` with *memory-backend-ram* backend or ``mem`` (if
195 it's supported by used machine type) to define mapping explicitly instead.
196 Users of existing VMs, wishing to preserve the same RAM distribution, should
197 configure it explicitly using ``-numa node,memdev`` options. Current RAM
198 distribution can be retrieved using HMP command ``info numa`` and if separate
199 memory devices (pc|nv-dimm) are present use ``info memory-device`` and subtract
200 device memory from output of ``info numa``.
202 ``-numa node,mem=``\ *size* (removed in 5.1)
203 ''''''''''''''''''''''''''''''''''''''''''''
205 The parameter ``mem`` of ``-numa node`` was used to assign a part of
206 guest RAM to a NUMA node. But when using it, it's impossible to manage a specified
207 RAM chunk on the host side (like bind it to a host node, setting bind policy, ...),
208 so the guest ends up with the fake NUMA configuration with suboptiomal performance.
209 However since 2014 there is an alternative way to assign RAM to a NUMA node
210 using parameter ``memdev``, which does the same as ``mem`` and adds
211 means to actually manage node RAM on the host side. Use parameter ``memdev``
212 with *memory-backend-ram* backend as replacement for parameter ``mem``
213 to achieve the same fake NUMA effect or a properly configured
214 *memory-backend-file* backend to actually benefit from NUMA configuration.
215 New machine versions (since 5.1) will not accept the option but it will still
216 work with old machine types. User can check the QAPI schema to see if the legacy
217 option is supported by looking at MachineInfo::numa-mem-supported property.
219 ``-mem-path`` fallback to RAM (removed in 5.0)
220 ''''''''''''''''''''''''''''''''''''''''''''''
222 If guest RAM allocation from file pointed by ``mem-path`` failed,
223 QEMU was falling back to allocating from RAM, which might have resulted
224 in unpredictable behavior since the backing file specified by the user
225 as ignored. Currently, users are responsible for making sure the backing storage
226 specified with ``-mem-path`` can actually provide the guest RAM configured with
227 ``-m`` and QEMU fails to start up if RAM allocation is unsuccessful.
229 ``-smp`` (invalid topologies) (removed 5.2)
230 '''''''''''''''''''''''''''''''''''''''''''
232 CPU topology properties should describe whole machine topology including
233 possible CPUs.
235 However, historically it was possible to start QEMU with an incorrect topology
236 where *n* <= *sockets* * *cores* * *threads* < *maxcpus*,
237 which could lead to an incorrect topology enumeration by the guest.
238 Support for invalid topologies is removed, the user must ensure
239 topologies described with -smp include all possible cpus, i.e.
240 *sockets* * *cores* * *threads* = *maxcpus*.
242 ``-machine enforce-config-section=on|off`` (removed 5.2)
243 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''
245 The ``enforce-config-section`` property was replaced by the
246 ``-global migration.send-configuration={on|off}`` option.
248 Block devices
249 -------------
251 VXHS backend (removed in 5.1)
252 '''''''''''''''''''''''''''''
254 The VXHS code did not compile since v2.12.0. It was removed in 5.1.