From: Anthony Liguori <aliguori@us.ibm.com>
To: Jan Kiszka <jan.kiszka@siemens.com>
Cc: Anthony PERARD <anthony.perard@citrix.com>,
Ian Campbell <Ian.Campbell@eu.citrix.com>,
qemu-devel <qemu-devel@nongnu.org>,
Markus Armbruster <armbru@redhat.com>,
"Richard W.M. Jones" <rjones@redhat.com>
Subject: Re: [Qemu-devel] [PATCH] Allow to leave type on default in -machine
Date: Fri, 29 Jul 2011 09:37:12 -0500 [thread overview]
Message-ID: <4E32C598.4050503@us.ibm.com> (raw)
In-Reply-To: <4E2D95A8.4060303@siemens.com>
On 07/25/2011 11:11 AM, Jan Kiszka wrote:
> On 2011-07-25 13:48, Jan Kiszka wrote:
>> On 2011-07-25 13:39, Markus Armbruster wrote:
>>> Jan Kiszka<jan.kiszka@siemens.com> writes:
>>>
>>>> On 2011-07-25 12:45, Richard W.M. Jones wrote:
>>>>> On Mon, Jul 25, 2011 at 12:33:01PM +0200, Jan Kiszka wrote:
>>>>>> On 2011-07-25 11:41, Richard W.M. Jones wrote:
>>>>>>> On Sat, Jul 23, 2011 at 12:38:37PM +0200, Jan Kiszka wrote:
>>>>>>>> From: Jan Kiszka<jan.kiszka@siemens.com>
>>>>>>>>
>>>>>>>> -machine somehow suggests that it selects the machine, but it doesn't.
>>>>>>>> Fix that before this command is set in stone.
>>>>>>>>
>>>>>>>> Actually, -machine should supersede -M and allow to introduce arbitrary
>>>>>>>> per-machine options to the command line. That will change the internal
>>>>>>>> realization again, but we will be able to keep the user interface
>>>>>>>> stable.
>>>>>>>
>>>>>>> This breaks libguestfs which was doing:
>>>>>>>
>>>>>>> qemu -machine accel=kvm:tcg ...
>>>>>>>
>>>>>>> We are not passing any -M option at all. We don't particularly care
>>>>>>> about the machine type since we're not that performance sensitive and
>>>>>>> we don't need to serialize the machine state.
>>>>>>>
>>>>>>> I have checked, and this works:
>>>>>>>
>>>>>>> qemu -machine pc,accel=kvm:tcg ...
>>>>>>>
>>>>>>> "pc" is the default, right? What about for other architectures?
>>>>>>
>>>>>> Yes, pc is the right default. Other arch have other defaults.
>>>>>
>>>>> So what you're saying is we have to parse qemu -machine \? output by
>>>>> looking for the string '(default)'? eg:
>>>>>
>>>>> $ ./arm-softmmu/qemu-system-arm -machine \?|fgrep '(default)'
>>>>> integratorcp ARM Integrator/CP (ARM926EJ-S) (default)
>>>>>
>>>>> $ ./i386-softmmu/qemu -machine \?|fgrep '(default)'
>>>>> pc-0.14 Standard PC (default)
>>>>
>>>> I understand, this is clumsy. Will see if we can do better.
>>>
>>> Is there a technical reason why type isn't optional with -machine?
>>>
>>> [...]
>>
>> Maybe it's just the
>>
>> assert(!permit_abbrev || list->implied_opt_name);
>>
>> in qemu_opts_parse, but I haven't looked at all details (and all other
>> users) yet.
>
> I was incorrectly pointing the core, the problem is solvable at the
> level where we parse -machine:
>
> -------8<--------
>
> This allows to specify -machine options without setting an explicit
> machine type. We will pick the default machine in this case. Requesting
> the list of available machines is still possible via '-machine ?' e.g.
>
> Signed-off-by: Jan Kiszka<jan.kiszka@siemens.com>
Applied. Thanks.
Regards,
Anthony Liguori
> ---
> vl.c | 5 ++++-
> 1 files changed, 4 insertions(+), 1 deletions(-)
>
> diff --git a/vl.c b/vl.c
> index 8256504..5e53ddc 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -2720,7 +2720,10 @@ int main(int argc, char **argv, char **envp)
> fprintf(stderr, "parse error: %s\n", optarg);
> exit(1);
> }
> - machine = machine_parse(qemu_opt_get(opts, "type"));
> + optarg = qemu_opt_get(opts, "type");
> + if (optarg) {
> + machine = machine_parse(optarg);
> + }
> break;
> case QEMU_OPTION_usb:
> usb_enabled = 1;
next prev parent reply other threads:[~2011-07-29 14:37 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-07-23 10:38 [Qemu-devel] [RESEND][PATCH v3] Generalize -machine command line option Jan Kiszka
2011-07-23 10:39 ` [Qemu-devel] [RESEND][PATCH 2/2] Deprecate -M command line options Jan Kiszka
2011-07-23 15:43 ` [Qemu-devel] [RESEND][PATCH v3] Generalize -machine command line option Anthony Liguori
2011-07-25 9:41 ` Richard W.M. Jones
2011-07-25 10:33 ` Jan Kiszka
2011-07-25 10:45 ` Richard W.M. Jones
2011-07-25 10:59 ` Jan Kiszka
2011-07-25 11:39 ` Markus Armbruster
2011-07-25 11:48 ` Jan Kiszka
2011-07-25 16:11 ` [Qemu-devel] [PATCH] Allow to leave type on default in -machine Jan Kiszka
2011-07-25 16:21 ` Richard W.M. Jones
2011-07-25 16:33 ` Alexander Graf
2011-07-29 14:37 ` Anthony Liguori [this message]
2011-07-25 12:23 ` [Qemu-devel] [RESEND][PATCH v3] Generalize -machine command line option Anthony Liguori
2011-07-25 11:48 ` Peter Maydell
2011-07-25 12:05 ` Peter Maydell
2011-07-25 12:18 ` Jan Kiszka
2011-07-25 12:22 ` Peter Maydell
2011-07-25 12:27 ` Jan Kiszka
2011-07-25 12:44 ` Alexander Graf
2011-07-25 12:47 ` Anthony Liguori
2011-07-25 12:49 ` Richard W.M. Jones
2011-07-25 12:53 ` Alexander Graf
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=4E32C598.4050503@us.ibm.com \
--to=aliguori@us.ibm.com \
--cc=Ian.Campbell@eu.citrix.com \
--cc=anthony.perard@citrix.com \
--cc=armbru@redhat.com \
--cc=jan.kiszka@siemens.com \
--cc=qemu-devel@nongnu.org \
--cc=rjones@redhat.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.