[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [linux-2.6.18-xen] xenbus: check availibility of XS_RESET_WATCHES command



# HG changeset patch
# User Olaf Hering <olaf@xxxxxxxxx>
# Date 1326102808 -3600
# Node ID cdbf3be3f2bd1e3988ea3f1c795e5636c0b53d4b
# Parent  b4e1b9ff189f3b04475a1d0118932316abf26e19
xenbus: check availibility of XS_RESET_WATCHES command

Check platform-feature-xs_reset_watches before sending XS_RESET_WATCHES
command. Buggy xenstored implementations such as EC2 do not ignore unknown
commands properly and cause a guest hang.

Signed-off-by: Olaf Hering <olaf@xxxxxxxxx>
Committed-by: Jan Beulich <jbeulich@xxxxxxxx>
---


diff -r b4e1b9ff189f -r cdbf3be3f2bd drivers/xen/xenbus/xenbus_xs.c
--- a/drivers/xen/xenbus/xenbus_xs.c    Mon Jan 09 10:50:24 2012 +0100
+++ b/drivers/xen/xenbus/xenbus_xs.c    Mon Jan 09 10:53:28 2012 +0100
@@ -630,7 +630,13 @@
 static void xs_reset_watches(void)
 {
 #ifndef CONFIG_XEN
-       int err;
+       int err, supported = 0;
+
+       err = xenbus_scanf(XBT_NIL, "control",
+                          "platform-feature-xs_reset_watches", "%d",
+                          &supported);
+       if (err != 1 || !supported)
+               return;
 
        err = xs_error(xs_single(XBT_NIL, XS_RESET_WATCHES, "", NULL));
        if (err && err != -EEXIST)

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.