Re: [Qemu-devel] Re: Storing command line options in images

Anthony Liguori
2007-08-10T20:11:18Z

Avi Kivity wrote:
> Anthony Liguori wrote:
>> Avi Kivity wrote:
>>>> This is a big effort but a config file is the right long term
>>>> solution.
>>>>
>>>>
>>>
>>> For which use case? management-full or management-less?
>>>
>>
>> Both. A config file will be useful not just for expressing the
>> functionality we have today, but also for describing the guest's
>> environment in greater detail. For instance, if you want to support
>> a bunch of different kinds of embedded systems, it would be very nice
>> if the machine description was a config file instead of hard coded
>> such that it was easy to tweak what hardware was present for the
>> particular embedded system.
>>
>
> Maybe I'm dense today. Which use case is this?

If you're using QEMU to simulate an embedded platform (ARM or PPC based
for instance). There is a huge amount of variety in embedded platforms
so having to hard code the PC description as a machine type in QEMU is
kind of annoying.

>>> A managed system will want to supply arguments out of a central
>>> database. For a management-less use case, the config file is a hassle.
>>>
>>
>> As long as all options are still settable via command line (or
>> stdio), then it's not at all a hassle.
>>
>
> Yes. But if you don't plan to use it, why implement it?

Well, I do plan to use it. I'm simply saying that you don't have to use
it if you don't want to.

There are a lot of knobs in QEMU and most of them have somewhat
arbitrary defaults. For instance, when I setup a machine, I don't want
to use user networking by default, I want to use tap. A global
configuration file would be terribly useful for this sort of thing.

> My feeling is that config files are outdated. When used with a gui,
> you end up writing silly parsers and stuff and still wrecking things
> horribly when the the gui writer's expectations don't match reality.
> When used without a gui, they increase the amount of details one has
> to remember (where's that config file? I renamed my image, did I
> remember to update the config file?). They also make upgrading more
> difficult.

There's only so much that can be expressed on a command line. There are
actually limits to the command line size on a lot of platforms. I don't
see why reading options from a file is so much worse than reading them
from the command line.

Regards,

Anthony Liguori