On Wed, Dec 11, 2019 at 09:12:41 +0100, Markus Armbruster wrote: > I went through the QAPI schema looking for deprecated stuff not > mentioned in qemu-deprecated.texi. Here's what I found: > > Commit b33945cfff "block: Accept device model name for > blockdev-open/close-tray" (v2.8.0) deprecated blockdev-open-tray, > blockdev-close-tray argument @device.
Libvirt uses these commands only in 'blockdev' mode. We use the qom name/path [1] as the value for @id field. We never used @device. > Commit 70e2cb3bd7 "block: Accept device model name for > blockdev-change-medium" (v2.8.0) deprecated blockdev-change-medium > argument @device. Same as above. > Commit 7a9877a026 "block: Accept device model name for > block_set_io_throttle" (v2.8.0) deprecated block_set_io_throttle > argument @device. This one is more complex. The command is used both in 'blockdev' and in 'drive' mode: In 'drive' mode we pass the alias of the 'drive' as the @device argument. In 'blockdev' mode we pass the qom name as @id > Commit c01c214b69 "block: remove all encryption handling APIs" > (v2.10.0) deprecated query-named-block-nodes result field > encryption_key_missing and query-block result field > inserted.encryption_key_missing. We don't extract or use the 'encryption_key_missing' at all. > Commit c42e8742f5 "block: Use JSON null instead of "" to disable > backing file" (v2.10.0) deprecated blockdev-add empty string > argument @backing. This is used in 'blockdev' mode only and we always pass the JSON null or a node name string. > These were missed in commit eb22aeca65 "docs: document deprecation > policy & deprecated features in appendix" (v2.10.0). > > Commit 3c605f4074 "commit: Add top-node/base-node options" (v3.1.0) > deprecated block-commit arguments @base and @top. This command also has two modes: In 'drive' mode we pass in path strings as @base and @ top. In 'blockdev' mode we pass in nodenames as @base-node and @top-node. Starting from qemu-4.2 libvirt uses 'blockdev' mode for VMs unless an SD card is configured as we didn't convert to the '-device' approach for those as AFAIK not everything is possible to be converted. > I can update qemu-deprecated.texi for these. > > Now my question: I wonder whether we want to remove any of them right > away. Feel free to delete any unused ones. I'm afraid that -drive mode will need to be supported for a while until we can convert the sd-cards too. [1]: The qom name used by libvirt is generated is generated here: https://libvirt.org/git/?p=libvirt.git;a=blob;f=src/qemu/qemu_alias.c;h=93bdcb7548757de547b2ccb01d0a2af16d5a7cc6;hb=HEAD#l224