From: John Snow <jsnow@redhat.com>
To: Michael Tokarev <mjt@tls.msk.ru>, qemu-devel <qemu-devel@nongnu.org>
Cc: Markus Armbruster <armbru@redhat.com>
Subject: Re: [Qemu-devel] the need for if=none for -drive?
Date: Mon, 03 Nov 2014 14:15:11 -0500 [thread overview]
Message-ID: <5457D43F.5090206@redhat.com> (raw)
In-Reply-To: <5455DB69.3080308@msgid.tls.msk.ru>
On 11/02/2014 02:21 AM, Michael Tokarev wrote:
> All "modern" 2-way drive/device specifications need to explicitly
> specify if=none for the drive for it to not be used in the default
> ide bus implicitly.
Which behave like this? I am reasonably sheltered in the IDE and S/ATA
lands.
> But how about using some if=unspecified implicitly for all devices
> which don't specify if=, pick any devices from that list which are
> referenced from -device, and only add those which left (plus the
> ones with explicit if=ide) to the default ide bus?
I wouldn't really be opposed to this, since making things more explicit
and less mysterious with the drive sugar sounds welcome to me. I imagine
you're trying to avoid the case where if= is omitted and QEMU gets to
decide what it wants to do in this (highly ambiguous) case?
> The change should be strighforward, the only (maybe significant)
> prob I see is a need to reorder -device/-drive initialization in
> vl.c. We might pick them up in drive_check_orphaned() too. Or,
> we can walk over -devices when adding -drives with if={unspec,explicit}.
>
> (this is a sort of a followup to 6b9e03a4e759876, "qtest/bios-tables:
> Correct Q35 command line", but ofcourse it's a topic by its own).
>
> Thanks,
>
> /mjt
>
It may be a little too late, since it seemed as if defaulting to
"IF_DEFAULT" always winds up getting mapped to whatever is provided by
the second argument of drive_new (block_default_type) which usually
winds up being machine_class->block_default_type -- which for Q35 and
piix both is IDE. (Implicitly, because it never sets it. interface 0 is
IF_IDE -- which makes the "true default" for if ... IDE, until it is
overridden.)
Changing this behavior might break more than we fix, perhaps.
I'll leave the masterminding of fixing up the grossly broken drive sugar
up to Markus, the secret architect of the recent Q35 sugar patches :>
next prev parent reply other threads:[~2014-11-03 19:15 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-02 7:21 [Qemu-devel] the need for if=none for -drive? Michael Tokarev
2014-11-03 19:15 ` John Snow [this message]
2014-12-17 11:52 ` Markus Armbruster
2015-01-08 13:47 ` Stefan Hajnoczi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5457D43F.5090206@redhat.com \
--to=jsnow@redhat.com \
--cc=armbru@redhat.com \
--cc=mjt@tls.msk.ru \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).