From 92a539d22e0da14d5395eb2c2c8bee162ebdb0b8 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Tue, 17 Mar 2015 17:02:20 +0100 Subject: [PATCH] raw-posix: Deprecate host floppy passthrough Raise your hand if you have a physical floppy drive in a computer you've powered on in 2015. Okay, I see we got a few weirdos in the audience. That's okay, weirdos are welcome here. Kidding aside, media change detection doesn't fully work, isn't going to be fixed, and floppy passthrough just isn't earning its keep anymore. Deprecate block driver host_floppy now, so we can drop it after a grace period. Signed-off-by: Markus Armbruster Reviewed-by: Gerd Hoffmann Reviewed-by: Eric Blake Reviewed-by: Max Reitz Signed-off-by: Kevin Wolf --- block/raw-posix.c | 2 ++ qapi/block-core.json | 2 ++ qemu-doc.texi | 5 +++-- qemu-options.hx | 3 +-- qmp-commands.hx | 2 +- 5 files changed, 9 insertions(+), 5 deletions(-) diff --git a/block/raw-posix.c b/block/raw-posix.c index f0b4488d1e..844ac21082 100644 --- a/block/raw-posix.c +++ b/block/raw-posix.c @@ -2387,6 +2387,8 @@ static int floppy_open(BlockDriverState *bs, QDict *options, int flags, s->fd = -1; s->fd_media_changed = 1; + error_report("Host floppy pass-through is deprecated"); + error_printf("Support for it will be removed in a future release.\n"); return 0; } diff --git a/qapi/block-core.json b/qapi/block-core.json index 42c885047f..ac839afb94 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -218,6 +218,7 @@ # 'host_floppy', 'http', 'https', 'nbd', 'parallels', 'qcow', # 'qcow2', 'raw', 'tftp', 'vdi', 'vmdk', 'vpc', 'vvfat' # 2.2: 'archipelago' added, 'cow' dropped +# 2.3: 'host_floppy' deprecated # # @backing_file: #optional the name of the backing file (for copy-on-write) # @@ -1245,6 +1246,7 @@ # Drivers that are supported in block device operations. # # @host_device, @host_cdrom, @host_floppy: Since 2.1 +# @host_floppy: deprecated since 2.3 # # Since: 2.0 ## diff --git a/qemu-doc.texi b/qemu-doc.texi index 8aa6dbf5d7..0125bc7928 100644 --- a/qemu-doc.texi +++ b/qemu-doc.texi @@ -736,8 +736,7 @@ devices. We describe here the usage for QEMU version >= 0.8.3. On Linux, you can directly use the host device filename instead of a disk image filename provided you have enough privileges to access -it. For example, use @file{/dev/cdrom} to access to the CDROM or -@file{/dev/fd0} for the floppy. +it. For example, use @file{/dev/cdrom} to access to the CDROM. @table @code @item CD @@ -749,6 +748,8 @@ You can specify a floppy device even if no floppy is loaded. Floppy removal is currently not detected accurately (if you change floppy without doing floppy access while the floppy is not loaded, the guest OS will think that the same floppy is loaded). +Use of the host's floppy device is deprecated, and support for it will +be removed in a future release. @item Hard disks Hard disks can be used. Normally you must specify the whole disk (@file{/dev/hdb} instead of @file{/dev/hdb1}) so that the guest OS can diff --git a/qemu-options.hx b/qemu-options.hx index c513352ea8..ffaf327486 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -419,8 +419,7 @@ STEXI @item -fdb @var{file} @findex -fda @findex -fdb -Use @var{file} as floppy disk 0/1 image (@pxref{disk_images}). You can -use the host floppy by using @file{/dev/fd0} as filename (@pxref{host_drives}). +Use @var{file} as floppy disk 0/1 image (@pxref{disk_images}). ETEXI DEF("hda", HAS_ARG, QEMU_OPTION_hda, diff --git a/qmp-commands.hx b/qmp-commands.hx index 06639248f2..faf75dae72 100644 --- a/qmp-commands.hx +++ b/qmp-commands.hx @@ -2154,7 +2154,7 @@ Each json-object contain the following: - "drv": driver format name (json-string) - Possible values: "blkdebug", "bochs", "cloop", "dmg", "file", "file", "ftp", "ftps", "host_cdrom", - "host_device", "host_floppy", "http", "https", + "host_device", "http", "https", "nbd", "parallels", "qcow", "qcow2", "raw", "tftp", "vdi", "vmdk", "vpc", "vvfat" - "backing_file": backing file name (json-string, optional)