summaryrefslogtreecommitdiff
path: root/vl.c
diff options
context:
space:
mode:
authorMarkus Armbruster <armbru@redhat.com>2017-02-15 13:18:55 +0100
committerMarkus Armbruster <armbru@redhat.com>2017-02-21 13:17:45 +0100
commita64aa5785d5d26878d0a80ce64625b61be8fde60 (patch)
treee321f5c6429caeceef212428fb6760cca171e1fd /vl.c
parentfb8b660e1718aaa77cccbda67af5727bb4a6250f (diff)
downloadqemu-a64aa5785d5d26878d0a80ce64625b61be8fde60.tar.gz
hw: Deprecate -drive if=scsi with non-onboard HBAs
Block backends defined with "-drive if=T" with T other than "none" are meant to be picked up by machine initialization code: a suitable frontend gets created and wired up automatically. Drives defined with if=scsi are also picked up by SCSI HBAs added with -device, unlike other interface types. Deprecate this usage, as follows. Create the frontends for onboard HBAs in machine initialization code, exactly like we do for if=ide and other interface types. Change scsi_legacy_handle_cmdline() to create a frontend only when it's still missing, and warn that this usage is deprecated. Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-Id: <1487161136-9018-3-git-send-email-armbru@redhat.com>
Diffstat (limited to 'vl.c')
-rw-r--r--vl.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/vl.c b/vl.c
index ab40889ad6..b5d0a19811 100644
--- a/vl.c
+++ b/vl.c
@@ -4510,7 +4510,13 @@ int main(int argc, char **argv, char **envp)
rom_reset_order_override();
- /* Create frontends for -drive if=scsi */
+ /*
+ * Create frontends for -drive if=scsi leftovers.
+ * Normally, frontends for -drive get created by machine
+ * initialization for onboard SCSI HBAs. However, we create a few
+ * more ever since SCSI qdevification, but this is pretty much an
+ * implementation accident, and deprecated.
+ */
scsi_legacy_handle_cmdline();
/* Did we create any drives that we failed to create a device for? */