[Win The Enterprise-wg] libvirtWatchdog status

Steve Gordon sgordon at redhat.com
Wed Dec 3 01:48:52 UTC 2014


----- Original Message -----
> From: "Stefano Maffulli" <stefano at openstack.org>
> To: "Daniel P. Berrange" <berrange at redhat.com>, Enterprise-wg at lists.openstack.org
> 
> hi Daniel,
> 
> during today's meeting for the Win The Enterprise working group we
> noticed libvirtWatchdog. The wiki page
> https://wiki.openstack.org/wiki/LibvirtWatchdog is authored by you
> originally so I'm reaching out to learn more about the status of this
> feature.
>
> In the WTE team, one of the priorities is to understand the status of
> features that allow non-ephemeral (persistent) workloads on OpenStack
> (aka the "pet" use case). libvirtWatchdog was mentioned during a session
> in Paris, saying that it currently supports KVM and Linux guests only.
> 
> What are the plans for its future (can/should it be extended to other
> guests/hypervisors)? Who's maintaining it at the moment? Is there any
> other documentation besides the wiki page?

I'll take a crack at it and then Dan can tell me how wrong I am since it's probably my fault it was in the etherpad ;). The watchdog feature in OpenStack is exposing capabilities in the underlying Libvirt [1] and Qemu [2][3] layers which allow you to attach an i6300esb watchdog device to the guest and assign a lifecycle action to take if it is triggered. Fundamentally there's nothing preventing other hypervisor projects from implementing this, I'm not sure which ones if any actually have however (and when I cover the second part of your question below it might become clear why).

As to why it only works with Linux guests (or more accurately why it doesn't work for Windows - I wouldn't be surprised if the BSD family or other OSes do support it to some degree but I've never checked) I believe it was originally intended to but there were a few issues uncovered during the chase, in particular:

1) The default Window's driver for the device only displays the PCI information for it (it doesn't actually do anything with the device).

2) The Intel driver for this device on Windows only ever worked with 32-bit editions of Windows.

3) The Intel driver for this device on Windows always assumes it's in a specific PCI slot.

4) There's no framework within Windows for triggering a watchdog device and we weren't able to determine if there were any Windows applications capable of  triggering one either.

Basically while you can attach the device to a Windows guest for it to actually be used it would require someone to write a proper driver for the device that works on Windows and there would need to be applications that know how to actually make use of it. In the Linux case I believe there is wider support for it and it can be triggered by common panics and lockups (Rich's blog [3] gives some more examples).

For the gorier details see: https://bugzilla.redhat.com/show_bug.cgi?id=610063.

Thanks,

Steve


[1] https://libvirt.org/formatdomain.html#elementsWatchdog
[2] http://wiki.qemu.org/download/qemu-doc.html
[3] http://rwmj.wordpress.com/2010/03/03/what-is-a-watchdog/

-- 
Steve Gordon, RHCE
Sr. Technical Product Manager,
Red Hat Enterprise Linux OpenStack Platform



More information about the Enterprise-wg mailing list