Markus Armbruster | 44c6784 | 2018-07-16 09:32:25 +0200 | [diff] [blame^] | 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 | |
| 22 | @subsection GTK 2.x |
| 23 | |
| 24 | Previously QEMU has supported building against both GTK 2.x |
| 25 | and 3.x series APIs. Support for the GTK 2.x builds will be |
| 26 | discontinued, so maintainers should switch to using GTK 3.x, |
| 27 | which is the default. |
| 28 | |
| 29 | @subsection SDL 1.2 |
| 30 | |
| 31 | Previously QEMU has supported building against both SDL 1.2 |
| 32 | and 2.0 series APIs. Support for the SDL 1.2 builds will be |
| 33 | discontinued, so maintainers should switch to using SDL 2.0, |
| 34 | which is the default. |
| 35 | |
| 36 | @section System emulator command line arguments |
| 37 | |
| 38 | @subsection -no-kvm (since 1.3.0) |
| 39 | |
| 40 | The ``-no-kvm'' argument is now a synonym for setting |
| 41 | ``-machine accel=tcg''. |
| 42 | |
| 43 | @subsection -vnc tls (since 2.5.0) |
| 44 | |
| 45 | The ``-vnc tls'' argument is now a synonym for setting |
| 46 | ``-object tls-creds-anon,id=tls0'' combined with |
| 47 | ``-vnc tls-creds=tls0' |
| 48 | |
| 49 | @subsection -vnc x509 (since 2.5.0) |
| 50 | |
| 51 | The ``-vnc x509=/path/to/certs'' argument is now a |
| 52 | synonym for setting |
| 53 | ``-object tls-creds-x509,dir=/path/to/certs,id=tls0,verify-peer=no'' |
| 54 | combined with ``-vnc tls-creds=tls0' |
| 55 | |
| 56 | @subsection -vnc x509verify (since 2.5.0) |
| 57 | |
| 58 | The ``-vnc x509verify=/path/to/certs'' argument is now a |
| 59 | synonym for setting |
| 60 | ``-object tls-creds-x509,dir=/path/to/certs,id=tls0,verify-peer=yes'' |
| 61 | combined with ``-vnc tls-creds=tls0' |
| 62 | |
| 63 | @subsection -tftp (since 2.6.0) |
| 64 | |
| 65 | The ``-tftp /some/dir'' argument is replaced by either |
| 66 | ``-netdev user,id=x,tftp=/some/dir '' (for pluggable NICs, accompanied |
| 67 | with ``-device ...,netdev=x''), or ``-nic user,tftp=/some/dir'' |
| 68 | (for embedded NICs). The new syntax allows different settings to be |
| 69 | provided per NIC. |
| 70 | |
| 71 | @subsection -bootp (since 2.6.0) |
| 72 | |
| 73 | The ``-bootp /some/file'' argument is replaced by either |
| 74 | ``-netdev user,id=x,bootp=/some/file '' (for pluggable NICs, accompanied |
| 75 | with ``-device ...,netdev=x''), or ``-nic user,bootp=/some/file'' |
| 76 | (for embedded NICs). The new syntax allows different settings to be |
| 77 | provided per NIC. |
| 78 | |
| 79 | @subsection -redir (since 2.6.0) |
| 80 | |
| 81 | The ``-redir [tcp|udp]:hostport:[guestaddr]:guestport'' argument is |
| 82 | replaced by either |
| 83 | ``-netdev user,id=x,hostfwd=[tcp|udp]:[hostaddr]:hostport-[guestaddr]:guestport'' |
| 84 | (for pluggable NICs, accompanied with ``-device ...,netdev=x'') or |
| 85 | ``-nic user,hostfwd=[tcp|udp]:[hostaddr]:hostport-[guestaddr]:guestport'' |
| 86 | (for embedded NICs). The new syntax allows different settings to be |
| 87 | provided per NIC. |
| 88 | |
| 89 | @subsection -smb (since 2.6.0) |
| 90 | |
| 91 | The ``-smb /some/dir'' argument is replaced by either |
| 92 | ``-netdev user,id=x,smb=/some/dir '' (for pluggable NICs, accompanied |
| 93 | with ``-device ...,netdev=x''), or ``-nic user,smb=/some/dir'' |
| 94 | (for embedded NICs). The new syntax allows different settings to be |
| 95 | provided per NIC. |
| 96 | |
| 97 | @subsection -drive cyls=...,heads=...,secs=...,trans=... (since 2.10.0) |
| 98 | |
| 99 | The drive geometry arguments are replaced by the the geometry arguments |
| 100 | that can be specified with the ``-device'' parameter. |
| 101 | |
| 102 | @subsection -drive serial=... (since 2.10.0) |
| 103 | |
| 104 | The drive serial argument is replaced by the the serial argument |
| 105 | that can be specified with the ``-device'' parameter. |
| 106 | |
| 107 | @subsection -drive addr=... (since 2.10.0) |
| 108 | |
| 109 | The drive addr argument is replaced by the the addr argument |
| 110 | that can be specified with the ``-device'' parameter. |
| 111 | |
| 112 | @subsection -usbdevice (since 2.10.0) |
| 113 | |
| 114 | The ``-usbdevice DEV'' argument is now a synonym for setting |
| 115 | the ``-device usb-DEV'' argument instead. The deprecated syntax |
| 116 | would automatically enable USB support on the machine type. |
| 117 | If using the new syntax, USB support must be explicitly |
| 118 | enabled via the ``-machine usb=on'' argument. |
| 119 | |
| 120 | @subsection -nodefconfig (since 2.11.0) |
| 121 | |
| 122 | The ``-nodefconfig`` argument is a synonym for ``-no-user-config``. |
| 123 | |
| 124 | @subsection -balloon (since 2.12.0) |
| 125 | |
| 126 | The @option{--balloon virtio} argument has been superseded by |
| 127 | @option{--device virtio-balloon}. |
| 128 | |
| 129 | @subsection -machine s390-squash-mcss=on|off (since 2.12.0) |
| 130 | |
| 131 | The ``s390-squash-mcss=on`` property has been obsoleted by allowing the |
| 132 | cssid to be chosen freely. Instead of squashing subchannels into the |
| 133 | default channel subsystem image for guests that do not support multiple |
| 134 | channel subsystems, all devices can be put into the default channel |
| 135 | subsystem image. |
| 136 | |
| 137 | @subsection -fsdev handle (since 2.12.0) |
| 138 | |
| 139 | The ``handle'' fsdev backend does not support symlinks and causes the 9p |
| 140 | filesystem in the guest to fail a fair amount of tests from the PJD POSIX |
| 141 | filesystem test suite. Also it requires the CAP_DAC_READ_SEARCH capability, |
| 142 | which is not the recommended way to run QEMU. This backend should not be |
| 143 | used and it will be removed with no replacement. |
| 144 | |
| 145 | @subsection -no-frame (since 2.12.0) |
| 146 | |
| 147 | The @code{--no-frame} argument works with SDL 1.2 only. The other user |
| 148 | interfaces never implemented this in the first place. So this will be |
| 149 | removed together with SDL 1.2 support. |
| 150 | |
| 151 | @subsection -rtc-td-hack (since 2.12.0) |
| 152 | |
| 153 | The @code{-rtc-td-hack} option has been replaced by |
| 154 | @code{-rtc driftfix=slew}. |
| 155 | |
| 156 | @subsection -localtime (since 2.12.0) |
| 157 | |
| 158 | The @code{-localtime} option has been replaced by @code{-rtc base=localtime}. |
| 159 | |
| 160 | @subsection -startdate (since 2.12.0) |
| 161 | |
| 162 | The @code{-startdate} option has been replaced by @code{-rtc base=@var{date}}. |
| 163 | |
| 164 | @subsection -virtioconsole (since 3.0.0) |
| 165 | |
| 166 | Option @option{-virtioconsole} has been replaced by |
| 167 | @option{-device virtconsole}. |
| 168 | |
| 169 | @subsection -clock (since 3.0.0) |
| 170 | |
| 171 | The @code{-clock} option is ignored since QEMU version 1.7.0. There is no |
| 172 | replacement since it is not needed anymore. |
| 173 | |
| 174 | @subsection -enable-hax (since 3.0.0) |
| 175 | |
| 176 | The @option{-enable-hax} option has been replaced by @option{-accel hax}. |
| 177 | Both options have been introduced in QEMU version 2.9.0. |
| 178 | |
| 179 | @subsection -drive file=json:@{...@{'driver':'file'@}@} (since 3.0) |
| 180 | |
| 181 | The 'file' driver for drives is no longer appropriate for character or host |
| 182 | devices and will only accept regular files (S_IFREG). The correct driver |
| 183 | for these file types is 'host_cdrom' or 'host_device' as appropriate. |
| 184 | |
| 185 | @section QEMU Machine Protocol (QMP) commands |
| 186 | |
| 187 | @subsection block-dirty-bitmap-add "autoload" parameter (since 2.12.0) |
| 188 | |
| 189 | "autoload" parameter is now ignored. All bitmaps are automatically loaded |
| 190 | from qcow2 images. |
| 191 | |
| 192 | @subsection query-cpus (since 2.12.0) |
| 193 | |
| 194 | The ``query-cpus'' command is replaced by the ``query-cpus-fast'' command. |
| 195 | |
| 196 | @subsection query-cpus-fast "arch" output member (since 3.0.0) |
| 197 | |
| 198 | The ``arch'' output member of the ``query-cpus-fast'' command is |
| 199 | replaced by the ``target'' output member. |
| 200 | |
| 201 | @section System emulator devices |
| 202 | |
| 203 | @subsection ivshmem (since 2.6.0) |
| 204 | |
| 205 | The ``ivshmem'' device type is replaced by either the ``ivshmem-plain'' |
| 206 | or ``ivshmem-doorbell`` device types. |
| 207 | |
| 208 | @subsection Page size support < 4k for embedded PowerPC CPUs (since 2.12.0) |
| 209 | |
| 210 | qemu-system-ppcemb will be removed. qemu-system-ppc (or qemu-system-ppc64) |
| 211 | should be used instead. That means that embedded 4xx PowerPC CPUs will not |
| 212 | support page sizes < 4096 any longer. |
| 213 | |
| 214 | @section System emulator machines |
| 215 | |
| 216 | @subsection pc-0.10 and pc-0.11 (since 3.0) |
| 217 | |
| 218 | These machine types are very old and likely can not be used for live migration |
| 219 | from old QEMU versions anymore. A newer machine type should be used instead. |
| 220 | |
| 221 | @section Device options |
| 222 | |
| 223 | @subsection Block device options |
| 224 | |
| 225 | @subsubsection "backing": "" (since 2.12.0) |
| 226 | |
| 227 | In order to prevent QEMU from automatically opening an image's backing |
| 228 | chain, use ``"backing": null'' instead. |
| 229 | |
| 230 | @subsection vio-spapr-device device options |
| 231 | |
| 232 | @subsubsection "irq": "" (since 3.0.0) |
| 233 | |
| 234 | The ``irq'' property is obsoleted. |