On 2011-07-25 13:39, Markus Armbruster wrote:
> Jan Kiszka <jan.kis...@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.kis...@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.

>From -machine POV, I see no reason that prevents defaulting to some
machine type if "[type=]XXX" is missing in the command line.

Jan

--
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux

Reply via email to