[libvirt] pvpanic plans?
anthony at codemonkey.ws
Tue Aug 27 13:17:00 UTC 2013
On Tue, Aug 27, 2013 at 8:13 AM, Daniel P. Berrange <berrange at redhat.com> wrote:
> On Thu, Aug 22, 2013 at 09:16:57PM +0200, Paolo Bonzini wrote:
>> Il 22/08/2013 19:53, Laszlo Ersek ha scritto:
>> >> > We should just introduce a simple watchdog device based on virtio and
>> >> > call it a day. Then it's cross platform, solves the guest enumeration
>> >> > problem, and libvirt can detect the presence of the new device.
>> > If the guest doesn't initialize the proposed virtio-panic device, then
>> > it will lie dormant too, just like the current pvpanic device. That's good.
>> > However a new (standalone) virtio device will take up yet another PCI
>> > function (a full device if you want it to be hotpluggable). PCI
>> > functions are scarcer than ioports.
>> Not just that. Panic notifiers are called in a substantially unknown
>> environment, with locks taken or interrupts already set up.
>> This is why we went for a simple ISA device. Configuration via ACPI
>> follows naturally from there, and anyway any other standard of the day
>> would have had the same problem with Windows. At some point we had ACPI
>> methods instead of a simple ioport write, but we had to remove that
>> because the ACPI subsystem might have had its lock taken.
>> Also, a virtio watchdog device makes little sense, IMHO. PV makes sense
>> if emulation has insufficient performance, excessive CPU usage, or
>> excessive complexity. We already have both an ISA and a PCI watchdog,
>> and they serve their purpose wonderfully.
> I also don't think that panic notifiers & watchdogs are really
> serving the same purpose. The panic notifier is an alert to a
> specific known kernel crash. A watchdog is merely a timeout,
> which is inferred to mean /something/ went wrong. Both have
> their uses IMHO & we should not conflate the two.
Even if you ignore the watchdog aspect of this, having a portable
panic notifier and the ability to enhance it to include more
information (like the backtrace, etc.) is pretty darn useful.
> |: 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 :|
More information about the libvir-list