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