]>
Commit | Line | Data |
---|---|---|
44c67847 MA |
1 | @node Deprecated features |
2 | @appendix Deprecated features | |
3 | ||
4 | In general features are intended to be supported indefinitely once | |
5 | introduced into QEMU. In the event that a feature needs to be removed, | |
6 | it will be listed in this appendix. The feature will remain functional | |
7 | for 2 releases prior to actual removal. Deprecated features may also | |
8 | generate warnings on the console when QEMU starts up, or if activated | |
9 | via a monitor command, however, this is not a mandatory requirement. | |
10 | ||
11 | Prior to the 2.10.0 release there was no official policy on how | |
12 | long features would be deprecated prior to their removal, nor | |
13 | any documented list of which features were deprecated. Thus | |
14 | any features deprecated prior to 2.10.0 will be treated as if | |
15 | they were first deprecated in the 2.10.0 release. | |
16 | ||
17 | What follows is a list of all features currently marked as | |
18 | deprecated. | |
19 | ||
20 | @section Build options | |
21 | ||
44c67847 MA |
22 | @subsection SDL 1.2 |
23 | ||
24 | Previously QEMU has supported building against both SDL 1.2 | |
25 | and 2.0 series APIs. Support for the SDL 1.2 builds will be | |
26 | discontinued, so maintainers should switch to using SDL 2.0, | |
27 | which is the default. | |
28 | ||
29 | @section System emulator command line arguments | |
30 | ||
91c082ad TH |
31 | @subsection -machine enforce-config-section=on|off (since 3.1) |
32 | ||
33 | The @option{enforce-config-section} parameter is replaced by the | |
34 | @option{-global migration.send-configuration=@var{on|off}} option. | |
35 | ||
44c67847 MA |
36 | @subsection -no-kvm (since 1.3.0) |
37 | ||
38 | The ``-no-kvm'' argument is now a synonym for setting | |
39 | ``-machine accel=tcg''. | |
40 | ||
44c67847 MA |
41 | @subsection -usbdevice (since 2.10.0) |
42 | ||
43 | The ``-usbdevice DEV'' argument is now a synonym for setting | |
44 | the ``-device usb-DEV'' argument instead. The deprecated syntax | |
45 | would automatically enable USB support on the machine type. | |
46 | If using the new syntax, USB support must be explicitly | |
47 | enabled via the ``-machine usb=on'' argument. | |
48 | ||
44c67847 MA |
49 | @subsection -no-frame (since 2.12.0) |
50 | ||
51 | The @code{--no-frame} argument works with SDL 1.2 only. The other user | |
52 | interfaces never implemented this in the first place. So this will be | |
53 | removed together with SDL 1.2 support. | |
54 | ||
44c67847 MA |
55 | @subsection -virtioconsole (since 3.0.0) |
56 | ||
57 | Option @option{-virtioconsole} has been replaced by | |
58 | @option{-device virtconsole}. | |
59 | ||
60 | @subsection -clock (since 3.0.0) | |
61 | ||
62 | The @code{-clock} option is ignored since QEMU version 1.7.0. There is no | |
63 | replacement since it is not needed anymore. | |
64 | ||
65 | @subsection -enable-hax (since 3.0.0) | |
66 | ||
67 | The @option{-enable-hax} option has been replaced by @option{-accel hax}. | |
68 | Both options have been introduced in QEMU version 2.9.0. | |
69 | ||
70 | @subsection -drive file=json:@{...@{'driver':'file'@}@} (since 3.0) | |
71 | ||
72 | The 'file' driver for drives is no longer appropriate for character or host | |
73 | devices and will only accept regular files (S_IFREG). The correct driver | |
74 | for these file types is 'host_cdrom' or 'host_device' as appropriate. | |
75 | ||
101625a4 TH |
76 | @subsection -net ...,name=@var{name} (since 3.1) |
77 | ||
78 | The @option{name} parameter of the @option{-net} option is a synonym | |
79 | for the @option{id} parameter, which should now be used instead. | |
80 | ||
bc1fb850 IM |
81 | @subsection -smp (invalid topologies) (since 3.1) |
82 | ||
83 | CPU topology properties should describe whole machine topology including | |
84 | possible CPUs. | |
85 | ||
86 | However, historically it was possible to start QEMU with an incorrect topology | |
87 | where @math{@var{n} <= @var{sockets} * @var{cores} * @var{threads} < @var{maxcpus}}, | |
88 | which could lead to an incorrect topology enumeration by the guest. | |
89 | Support for invalid topologies will be removed, the user must ensure | |
90 | topologies described with -smp include all possible cpus, i.e. | |
91 | @math{@var{sockets} * @var{cores} * @var{threads} = @var{maxcpus}}. | |
92 | ||
44c67847 MA |
93 | @section QEMU Machine Protocol (QMP) commands |
94 | ||
95 | @subsection block-dirty-bitmap-add "autoload" parameter (since 2.12.0) | |
96 | ||
97 | "autoload" parameter is now ignored. All bitmaps are automatically loaded | |
98 | from qcow2 images. | |
99 | ||
100 | @subsection query-cpus (since 2.12.0) | |
101 | ||
102 | The ``query-cpus'' command is replaced by the ``query-cpus-fast'' command. | |
103 | ||
104 | @subsection query-cpus-fast "arch" output member (since 3.0.0) | |
105 | ||
106 | The ``arch'' output member of the ``query-cpus-fast'' command is | |
107 | replaced by the ``target'' output member. | |
108 | ||
c73e661f KC |
109 | @subsection cpu-add (since 4.0) |
110 | ||
111 | Use ``device_add'' for hotplugging vCPUs instead of ``cpu-add''. See | |
112 | documentation of ``query-hotpluggable-cpus'' for additional | |
113 | details. | |
114 | ||
e9b24fb9 | 115 | @section Human Monitor Protocol (HMP) commands |
68cb29ea TH |
116 | |
117 | @subsection The hub_id parameter of 'hostfwd_add' / 'hostfwd_remove' (since 3.1) | |
118 | ||
119 | The @option{[hub_id name]} parameter tuple of the 'hostfwd_add' and | |
120 | 'hostfwd_remove' HMP commands has been replaced by @option{netdev_id}. | |
121 | ||
dc15043e | 122 | @subsection cpu-add (since 4.0) |
3800db78 KC |
123 | |
124 | Use ``device_add'' for hotplugging vCPUs instead of ``cpu-add''. See | |
125 | documentation of ``query-hotpluggable-cpus'' for additional details. | |
126 | ||
44c67847 MA |
127 | @section System emulator devices |
128 | ||
c0188e69 TH |
129 | @subsection bluetooth (since 3.1) |
130 | ||
131 | The bluetooth subsystem is unmaintained since many years and likely bitrotten | |
132 | quite a bit. It will be removed without replacement unless some users speaks | |
133 | up at the @email{qemu-devel@@nongnu.org} mailing list with information about | |
134 | their usecases. | |
135 | ||
44c67847 MA |
136 | @section System emulator machines |
137 | ||
cc425b5d | 138 | @subsection pc-0.12, pc-0.13, pc-0.14 and pc-0.15 (since 4.0) |
44c67847 MA |
139 | |
140 | These machine types are very old and likely can not be used for live migration | |
141 | from old QEMU versions anymore. A newer machine type should be used instead. | |
142 | ||
93323287 HP |
143 | @subsection prep (PowerPC) (since 3.1) |
144 | ||
145 | This machine type uses an unmaintained firmware, broken in lots of ways, | |
146 | and unable to start post-2004 operating systems. 40p machine type should be | |
147 | used instead. | |
148 | ||
44c67847 MA |
149 | @section Device options |
150 | ||
151 | @subsection Block device options | |
152 | ||
153 | @subsubsection "backing": "" (since 2.12.0) | |
154 | ||
155 | In order to prevent QEMU from automatically opening an image's backing | |
156 | chain, use ``"backing": null'' instead. | |
157 | ||
3bebd37e JC |
158 | @subsubsection rbd keyvalue pair encoded filenames: "" (since 3.1.0) |
159 | ||
160 | Options for ``rbd'' should be specified according to its runtime options, | |
161 | like other block drivers. Legacy parsing of keyvalue pair encoded | |
162 | filenames is useful to open images with the old format for backing files; | |
163 | These image files should be updated to use the current format. | |
164 | ||
165 | Example of legacy encoding: | |
166 | ||
167 | @code{json:@{"file.driver":"rbd", "file.filename":"rbd:rbd/name"@}} | |
168 | ||
169 | The above, converted to the current supported format: | |
170 | ||
171 | @code{json:@{"file.driver":"rbd", "file.pool":"rbd", "file.image":"name"@}} | |
172 | ||
44c67847 MA |
173 | @subsection vio-spapr-device device options |
174 | ||
175 | @subsubsection "irq": "" (since 3.0.0) | |
176 | ||
177 | The ``irq'' property is obsoleted. |