On Wed, Dec 04, 2013 at 08:39:58AM -0700, Eric Blake wrote:
On 12/03/2013 11:31 PM, Hu Tao wrote:
>>
>> pvpanic is a qemu term, but I could see the feasibility of other
>> hypervisors having a paravirt device with a sole purpose of notifying
>> the host about panics. Do we want to come up with a more generic name?
>
> Give it a generic name is easy, but what about attributes? different
> hypervisors may have different paravirt devices with different
> attributes, we can't just mix attributes of unrelated devices into one
> generic device. Make the devices concrete and accept/reject it if
> hypervisors recognize it or not is better.
Then do what we've done in the past - separate the presence of a type of
device from the driver-specific attributes, something like:
<devices>
<panic>
<driver type='qemu' ioport='0x505'/>
</panic>
...
where we use the type='' field of <driver> to toggle between a
discriminated union of any other per-hypervisor specific attributes. By
default, you don't need a <driver> subelement; requesting <panic/> is
sufficient to use the defaults for the current hypervisor.
Dan, do you have any thoughts on the best representation to use? Or is
Hu's original proposal of:
<pvpanic ioport='0x505'/>
I'm not a fan of doing a special case attribute for 'ioport' - this is
something something that should be part of an <address> element, since
ioport numbers are a generic addressing concept for many devices.
eg ISA serial / parallel ports have IRQ / IO ports IIUC.
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|:
http://entangle-photo.org -o-
http://live.gnome.org/gtk-vnc :|