On Tue, Aug 06, 2013 at 01:48:17PM +0200, Markus Armbruster wrote:
Gleb Natapov gleb@redhat.com writes:
On Tue, Aug 06, 2013 at 01:03:34PM +0200, Andreas Färber wrote:
Am 06.08.2013 12:44, schrieb Gleb Natapov:
On Tue, Aug 06, 2013 at 01:19:53PM +0300, Michael S. Tsirkin wrote:
> It's a QEMU issue, devices that are added with -device are > documented in -device help and removed by dropping them from > command line. Devices added by default have no way to > be dropped from QOM except -nodefaults. > Are you saying that because pvpanic is added automatically QEMU -device help does not print help about it? Why not fix that? What QEMU --help issues has to do with deciding which devices should or should not be present by default?
No, I'm saying what I said: that there's no way to remove a device added by default except -nodefaults, and no way to find out what does -nodefaults exclude so you can add things you need back selectively.
And what are the rules that govern device exclusion from -nodefaults list? Why -nodefaults does not create empty machine?
We have -M none to create an empty machine.
FWIW -M q35 does not create all Q35 devices, there's -readconfig docs/q35-chipset.cfg for the rest. The criteria certainly is not migratability, since ICH9 AHCI (part of -M q35) is unmigratable, unfortunately. One practical reason not to create everything via config is that we cannot create SysBusDevices via -device when they require MMIO mapping or IRQ setup.
Support wiring up a machine without board code, just configuration has been the ever-distant goal of the qdev effort.
For ISADevices such as pvpanic that's not a problem.
Anthony has proposed QOM'ifying MemoryRegions and qemu_irq as solution to do the wiring-up from command line or config file, but those attempts got stuck a long time ago.
But -M creates not only things that cannot be created from a command line, it includes some default set of devices, so what is the criteria for those?
I'm not aware of defined, coherent criteria.
I can give you descriptive rather than prescriptive, though. Used to be "whatever anyone felt users would want". It's now "whatever has always been there, plus whatever survives interminable bikeshedding^W^Wvigorous debate.
No need to for ^W! It is like disputes in court: whoever has more money wins. In out case whoever has more times wins and I am going on vocation, so... :)
-- Gleb.