[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 16/32] fdc: Fix fallback=auto error handling
From: |
Markus Armbruster |
Subject: |
[PULL 16/32] fdc: Fix fallback=auto error handling |
Date: |
Wed, 29 Apr 2020 09:20:32 +0200 |
fdctrl_realize_common() rejects fallback=auto. Used by devices
"isa-fdc", "sysbus-fdc", "SUNW,fdtwo". The error handling is broken:
$ qemu-system-x86_64 -nodefaults -device isa-fdc,fallback=auto,driveA=fd0
-drive if=none,id=fd0
**
ERROR:/work/armbru/qemu/hw/block/fdc.c:434:pick_drive_type: assertion
failed: (drv->drive != FLOPPY_DRIVE_TYPE_AUTO)
Aborted (core dumped)
Cause: fdctrl_realize_common() neglects to bail out after setting the
error. Fix that.
Fixes: a73275dd6fc3bfda33165bebc28e0c33c20cb0a0
Cc: John Snow <address@hidden>
Signed-off-by: Markus Armbruster <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>
---
hw/block/fdc.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/block/fdc.c b/hw/block/fdc.c
index 33bc9e2f92..9628cc171e 100644
--- a/hw/block/fdc.c
+++ b/hw/block/fdc.c
@@ -2615,6 +2615,7 @@ static void fdctrl_realize_common(DeviceState *dev,
FDCtrl *fdctrl,
if (fdctrl->fallback == FLOPPY_DRIVE_TYPE_AUTO) {
error_setg(errp, "Cannot choose a fallback FDrive type of 'auto'");
+ return;
}
/* Fill 'command_to_handler' lookup table */
--
2.21.1
- [PULL 06/32] test-qemu-opts: Simplify test_has_help_option() after bug fix, (continued)
- [PULL 06/32] test-qemu-opts: Simplify test_has_help_option() after bug fix, Markus Armbruster, 2020/04/29
- [PULL 20/32] io: Fix qio_channel_socket_close() error handling, Markus Armbruster, 2020/04/29
- [PULL 31/32] libqos: Give get_machine_allocator() internal linkage, Markus Armbruster, 2020/04/29
- [PULL 07/32] qemu-option: Avoid has_help_option() in qemu_opts_parse_noisily(), Markus Armbruster, 2020/04/29
- [PULL 19/32] xen/pt: Fix flawed conversion to realize(), Markus Armbruster, 2020/04/29
- [PULL 32/32] qemu-option: pass NULL rather than 0 to the id of qemu_opts_set(), Markus Armbruster, 2020/04/29
- [PULL 08/32] qemu-img: Factor out accumulate_options() helper, Markus Armbruster, 2020/04/29
- [PULL 24/32] qga: Fix qmp_guest_suspend_{disk, ram}() error handling, Markus Armbruster, 2020/04/29
- [PULL 25/32] sam460ex: Suppress useless warning on -m 32 and -m 64, Markus Armbruster, 2020/04/29
- [PULL 27/32] bamboo, sam460ex: Tidy up error message for unsupported RAM size, Markus Armbruster, 2020/04/29
- [PULL 16/32] fdc: Fix fallback=auto error handling,
Markus Armbruster <=
- [PULL 28/32] smbus: Fix spd_data_generate() for number of banks > 2, Markus Armbruster, 2020/04/29
- [PULL 11/32] cryptodev: Fix cryptodev_builtin_cleanup() error API violation, Markus Armbruster, 2020/04/29
- [PULL 01/32] various: Remove suspicious '\' character outside of #define in C code, Markus Armbruster, 2020/04/29
- [PULL 26/32] smbus: Fix spd_data_generate() error API violation, Markus Armbruster, 2020/04/29
- [PULL 17/32] bochs-display: Fix vgamem=SIZE error handling, Markus Armbruster, 2020/04/29
- [PULL 23/32] qga: Fix qmp_guest_get_memory_blocks() error handling, Markus Armbruster, 2020/04/29
- [PULL 30/32] fuzz: Simplify how we compute available machines and types, Markus Armbruster, 2020/04/29
- [PULL 15/32] arm/virt: Fix virt_machine_device_plug_cb() error API violation, Markus Armbruster, 2020/04/29
- [PULL 29/32] Makefile: Drop unused, broken target recurse-fuzz, Markus Armbruster, 2020/04/29
- [PULL 21/32] migration/colo: Fix qmp_xen_colo_do_checkpoint() error handling, Markus Armbruster, 2020/04/29