While hammering out the VMBus / storage series, we've been struggling to figure out the best practices solution to the following problem:
VMBus is provided by a vmbus bridge; it appears the most natural to have it subclassed from SysBusDevice. There can only be one VMBus in the VM. Now the question is how to add it to the system: 1) with a boolean machine property "vmbus" that would trigger the creation of the VMBus bridge; its class would have ->cannot_instantiate_with_device_add_yet = true 2) with a regular -device option; this would require setting ->has_dynamic_sysbus = true for i440fx machines (q35 already have it) 3) anything else So far we went with 1) but since it's essentially the API the management layer would have to use we'd like to get it right from the beginning. Thanks, Roman.