Gerd Hoffmann <kra...@redhat.com> writes: > On Thu, May 14, 2020 at 10:09:21AM +0200, Paolo Bonzini wrote: >> IMHO configuration files are in general a failed experiment. In >> practice, they do not add much value over just a shell script because >> they don't allow configuring all QEMU options, they are very much fixed >> (by their nature). I think it's more or less agreed that they are not >> solving any problem for higher-level management stacks as well; those >> would prefer to configure the VM via QMP or another API. >> >> So, any objections to deprecating -readconfig and -writeconfig? > > -writeconfig surely can go away, it never reached the point where it > could write out an configuration which is actually complete. > > -readconfig is a bit more tricky, it's actually useful. I'm using it > sometimes.
I use it all the time. > Also we have docs/config/ with a bunch of files you can > pass to -readconfig. True. > I can see that it'll stand in the way if we want move away from QemuOpts > to something else (say qom-based yaml/json config files), so I wouldn't > veto deprecation, but I'd prefer it not being actually dropped until the > replacement is ready and the stuff in docs/config/ being converted to > the new scheme. I want QemuOpts replaced, and I want its replacement to support configuration files. The replacement effort needs some license for incompatible change. The less license, the harder the job becomes. The configuration file format is among the things that'll change. QemuOpts was a reasonable step forward back when you invented it, and it served us well for some time, but we've outgrown it. It's basically two-level: configuration group ("drive", "chardev", "device", ...) and option parameter (for "chardev": "backend", "path", "host", ...). We really need trees now. I can't see how to grow the current INI-like configuration file syntax compatibly to trees without making it overly verbose. Telling users now not to rely on the configuration file format to remain compatible makes sense to me.